Compare commits

...

5115 Commits
v1.9 ... v2.5.4

Author SHA1 Message Date
Maikel Linke
95819c9a0f Avoid asking the cloud if an image exists
https://github.com/openfoodfoundation/openfoodnetwork/issues/4392

Amazon's DNS is failing at the moment and some users can't access the
admin panel because of this error.

While `exists?` asks the storage server if the file is actually there,
`file?` just checks if we have the file name stored in the database
and the file should be there. It's much faster and less error prone.
2019-10-23 11:45:15 +11:00
Maikel Linke
20cabe6f12 Update from Transifex 2019-10-17 17:11:10 +11:00
Maikel
fe849b8dfd Merge pull request #4367 from openfoodfoundation/transifex
Transifex
2019-10-17 17:07:23 +11:00
Luis Ramos
167b44c30f Merge pull request #4365 from kristinalim/fix/4308-eager_load_associations_in_orders_and_fulfillment_reports
4308 Eager-load associations in Orders and Fulfillment reports
2019-10-16 21:39:30 +01:00
Luis Ramos
ad247e2116 Merge pull request #4268 from luisramos0/add_order_endpoint
Add api/orders/{order_number} API endpoint
2019-10-16 21:22:27 +01:00
Luis Ramos
e46875376e Merge pull request #4168 from mkllnk/4160-product-report-filters
4160 Fix product report filters
2019-10-16 14:47:55 +01:00
Luis Ramos
d7223c508a Merge pull request #4289 from luisramos0/spree_be_config_general
Move general_settings, mail_methods and image_settings from spree_backend to OFN
2019-10-16 12:08:36 +01:00
Kristina Lim
a91a23aa39 Eager-load associations for Orders and Fulfillment report subtypes 2019-10-16 19:06:35 +08:00
Luis Ramos
370f66e36b Merge pull request #4364 from kristinalim/refactor/4308-refactor_orders_and_fulfillment_report_types
4308 Refactor Orders and Fulfillment report subtypes
2019-10-16 10:30:24 +01:00
Luis Ramos
f7cdcf02e0 Merge pull request #4343 from openfoodfoundation/dependabot/bundler/oauth2-1.4.2
Bump oauth2 from 1.4.1 to 1.4.2
2019-10-16 10:29:25 +01:00
Pau Pérez Fabregat
1ee43fb495 Merge pull request #4358 from openfoodfoundation/dependabot/bundler/rspec-rails-3.9.0
Bump rspec-rails from 3.8.2 to 3.9.0
2019-10-15 10:25:23 +02:00
Transifex-Openfoodnetwork
e139d24639 Updating translations for config/locales/en_CA.yml 2019-10-15 12:06:18 +11:00
Luis Ramos
0dfe749496 Merge pull request #4356 from kristinalim/fix/4256-set_dalli_value_max_size
4256 Configure dalli store value max bytes from env variable
2019-10-14 18:41:00 +01:00
Luis Ramos
d6eade6fa3 Merge pull request #4363 from jonleighton/fix-docker-setup
Fix error during first run of docker-compose
2019-10-14 13:38:04 +01:00
Luis Ramos
109aed684e Merge pull request #4344 from openfoodfoundation/dependabot/bundler/ddtrace-0.28.0
Bump ddtrace from 0.27.0 to 0.28.0
2019-10-14 12:39:52 +01:00
Luis Ramos
35d76ac991 Merge pull request #4298 from luisramos0/variant_edit
Make unit description visible in the variant edit page even for products which variant_unit is items
2019-10-13 19:54:41 +01:00
Luis Ramos
1ab9e9d7a5 Merge pull request #4299 from luisramos0/drop_order_ship_method_id
Remove unused field orders.shipping_method_id
2019-10-13 19:54:13 +01:00
Luis Ramos
e5e716e150 Merge pull request #4336 from openfoodfoundation/dependabot/bundler/rubyzip-1.3.0
[Security] Bump rubyzip from 1.2.2 to 1.3.0
2019-10-13 19:53:48 +01:00
Luis Ramos
b6510c3ab6 Merge pull request #4262 from daningenthron/daningenthron/default-shipping-category
Prefill shipping category forms with default values
2019-10-13 19:52:43 +01:00
Transifex-Openfoodnetwork
a158a986c6 Updating translations for config/locales/en_US.yml 2019-10-11 13:06:17 +11:00
Kristina Lim
c7643db66f Remove unnecessary Orders and Fulfillment lines in .rubocop_manual_todo.yml 2019-10-10 21:05:06 +08:00
Kristina Lim
eb8c22aa06 Disable violated cops in Order and Fulfillment report subtypes 2019-10-10 21:01:46 +08:00
Kristina Lim
d0656485d7 Make report_klass in OrdersAndFulfillmentsReport compact 2019-10-10 21:01:46 +08:00
Kristina Lim
640cc1b6d3 Address Metrics/LineLength in Orders and Fulfillments reports 2019-10-10 21:01:45 +08:00
Kristina Lim
d65d17a9f3 Freeze report type string in Order and Fulfillment reports 2019-10-10 21:01:45 +08:00
Kristina Lim
bbea00e431 Delegate methods in Orders and Fulfillment report to report object 2019-10-10 21:01:45 +08:00
Kristina Lim
3cecba70e8 Refactor and memoize report object in Orders and Fulfillment report 2019-10-10 21:01:44 +08:00
Kristina Lim
8bbff09066 Refactor report class in Orders and Fulfillment report 2019-10-10 21:01:44 +08:00
Kristina Lim
a7a89d7ccb Add attr reader for report type in Orders and Fulfillment report 2019-10-10 21:01:44 +08:00
Kristina Lim
3ccf76ff5f Add smoke test for Customer Totals report 2019-10-10 21:01:34 +08:00
Kristina Lim
6004208496 Move specific logic for Customer Totals report to class 2019-10-10 20:05:35 +08:00
Kristina Lim
3ce9c712cf Add smoke test for Distributor Totals by Supplier report 2019-10-10 20:05:35 +08:00
Kristina Lim
bfb0032fd2 Move specific logic for Distributor Totals by Supplier report to class 2019-10-10 20:05:29 +08:00
Kristina Lim
fe37516ead Add smoke test for Supplier Totals by Distributor report 2019-10-10 19:58:49 +08:00
Kristina Lim
289b75e143 Move specific logic for Supplier Totals by Distributor report to class 2019-10-10 19:57:41 +08:00
Kristina Lim
09f0f8c33f Move "order_cycle_supplier_totals" report type to constant 2019-10-10 19:54:29 +08:00
Kristina Lim
8bc1718978 Add smoke test for Supplier Totals report 2019-10-10 19:50:28 +08:00
Kristina Lim
cbfce69a6d Move specific logic for Supplier Totals report to class 2019-10-10 19:48:59 +08:00
Kristina Lim
4e0ecdd44c Rename params in OrdersAndFulfillmentsReport to options 2019-10-10 15:57:51 +08:00
Jon Leighton
23ab9a4bed Fix error during first run of docker-compose
Prior to this commit, the db container would create a database named
“ofn” (the same as $POSTGRES_USER).

Then, when the web container started, it would run `rake db:reset`. This
would load the Rails environment, which ends up requiring some model
files, which eventually end up trying to connect to the
“open_food_network_dev” database, which doesn’t exist. Therefore setting
up the database fails, and it’s impossible to boot the web container.

As a side note, I’m not convinced that bootstrapping the database as
part of the container’s command is the best strategy (if for no other
reason that this will wipe my database every time I run `docker-compose
up`). But this commit doesn’t change that.

What it does is add the $POSTGRES_DB environment variable so that the db
container creates the “open_food_network_dev” database (which is blank).
Then, when `rake db:reset` runs, it’ll successfully connect to this
(empty) database while loading the environment, before deleting and recreating it.

Note that I had to manually delete the `openfoodnetwork_postgres` volume
in order to reset my local state, after making this change.
2019-10-10 12:17:22 +11:00
Maikel Linke
f623446e3e Avoid additional query in inventory reports 2019-10-10 11:11:14 +11:00
Maikel Linke
6944fe1e46 Make order cycle filter chainable with other filters 2019-10-10 10:06:36 +11:00
Maikel Linke
7c9e3d7f06 Spec combination of all variant filters 2019-10-10 10:06:36 +11:00
Dan Ingenthron
bdcadf9fc6 Update changes to reflect new non-Spree shipping method controller 2019-10-08 18:37:16 -05:00
Dan Ingenthron
9b7139fd45 Add default shipping category during object creation; revert forms 2019-10-08 18:37:16 -05:00
Dan Ingenthron
543e275d2e Add custom shipping category to pass package spec 2019-10-08 18:37:16 -05:00
Dan Ingenthron
560fa6b949 Update shipping category factory with default 2019-10-08 18:37:16 -05:00
Dan Ingenthron
dbf34da87b Rubocop fixes 2019-10-08 18:37:16 -05:00
Dan Ingenthron
d6022062e1 Use default for create product spec; auto-fill field 2019-10-08 18:37:16 -05:00
Dan Ingenthron
b082d3301b Add prechecked category to shipping method spec 2019-10-08 18:37:16 -05:00
Dan Ingenthron
48cd542138 Service spec 2019-10-08 18:37:15 -05:00
Dan Ingenthron
e2d341c9c2 Add default category to seeds 2019-10-08 18:37:15 -05:00
Dan Ingenthron
89873a2640 Add and auto-check default category in shipping method create 2019-10-08 18:37:15 -05:00
Dan Ingenthron
b4be2cc2d4 Add default shipping category service and update create product form 2019-10-08 18:37:15 -05:00
Dan Ingenthron
35f89a9750 Update spec to prefill shipping category in Create form 2019-10-08 18:37:15 -05:00
Dan Ingenthron
592a53b6f5 Remove blank option from shipping category dropdown 2019-10-08 18:37:15 -05:00
dependabot-preview[bot]
eab9d42eb0 Bump rspec-rails from 3.8.2 to 3.9.0
Bumps [rspec-rails](https://github.com/rspec/rspec-rails) from 3.8.2 to 3.9.0.
- [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.8.2...v3.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-08 20:56:10 +00:00
Kristina Lim
cf05369ca9 Configure dalli store value max bytes from env variable 2019-10-08 17:58:43 +08:00
luisramos0
5077b0e625 Update all locales with the latest Transifex translations 2019-10-08 10:02:54 +01:00
Luis Ramos
1299c0b5eb Merge pull request #4339 from openfoodfoundation/transifex
Transifex
2019-10-08 09:40:54 +01:00
luisramos0
a2bc61cb4d Remove unused field orders.shipping_method_id 2019-10-08 09:09:19 +01:00
Pau Pérez Fabregat
057572a445 Merge pull request #4321 from luisramos0/fix_pt_br
Delete old pt-BR translations file (it's now correctly called pt_BR)
2019-10-08 08:49:12 +02:00
Pau Pérez Fabregat
3403ab4162 Merge pull request #4340 from openfoodfoundation/sigmundpetersen-patch-1
Delete ISSUE_TEMPLATE.md
2019-10-08 08:48:47 +02:00
Luis Ramos
9a036d18b7 Merge pull request #4271 from luisramos0/no_obsolete_master
Remove logic related to master variants in Exchanges and migrate data
2019-10-07 15:22:53 +01:00
luisramos0
f2b57057cd Add migration to delete all master variants from exchanges and replace them with standard variants 2019-10-07 14:53:44 +01:00
luisramos0
95bc8fa984 Remove logic from OrderCycleDistributedProducts related to obsolete master variants in OCs, this is a condition that will never happen now since we ensure products always have a standard variants
A migration will be added as well to clean up any very old master variants available in order cycles
2019-10-07 14:53:44 +01:00
Luis Ramos
54c44c33eb Merge pull request #4324 from Matt-Yorkley/reports_memoize
Reports memoization
2019-10-07 13:20:03 +01:00
Luis Ramos
8a732568e7 Merge pull request #4325 from kristinalim/feature/4312-remove_find_variant_in_orders_and_fulfillment_report
4312 Use association instead of OrderAndFulfillmentsReport#find_variant
2019-10-07 11:38:37 +01:00
Pau Pérez Fabregat
f4523f0305 Merge pull request #4350 from luisramos0/docker
Update ruby version in dockerfile and in getting started
2019-10-04 16:21:22 +02:00
Transifex-Openfoodnetwork
56a7a49ea2 Updating translations for config/locales/es.yml 2019-10-04 21:23:11 +10:00
Transifex-Openfoodnetwork
7d1ae3bf67 Updating translations for config/locales/es.yml 2019-10-04 21:20:03 +10:00
Transifex-Openfoodnetwork
b9aa4e11da Updating translations for config/locales/ca.yml 2019-10-04 21:19:57 +10:00
Luis Ramos
96428c11c6 Merge pull request #4334 from Matt-Yorkley/products_renderer
Products renderer
2019-10-03 13:47:04 +01:00
Luis Ramos
c15660da0e Merge pull request #4269 from luisramos0/spree_be_config
Move shipping_methods and shipping categories from spree_backend to OFN
2019-10-03 13:45:17 +01:00
Transifex-Openfoodnetwork
9ea05b0794 Updating translations for config/locales/de_DE.yml 2019-10-03 20:48:44 +10:00
luisramos0
c5b939c8ee Update ruby version in dockerfile and in getting started 2019-10-02 23:45:23 +01:00
luisramos0
c5a17bcde0 Fix rubocop issues in feature specs related to configuration 2019-10-02 21:26:10 +01:00
luisramos0
b712ec7f13 Transpec feature specs brought from spre_backend 2019-10-02 21:26:09 +01:00
luisramos0
32a7f13dd2 Bring feature specs for configuration pages from spree_backend 2019-10-02 21:26:09 +01:00
luisramos0
713769b497 Fix rubocop issues in mail_methods_controller_spec 2019-10-02 21:26:09 +01:00
luisramos0
495de37620 Fix more rubocop issues in image_settings_controller_spec 2019-10-02 21:26:09 +01:00
luisramos0
05d24cf11a Transpec image_setting_controller_spec 2019-10-02 21:26:09 +01:00
luisramos0
edd84530af Fix simle rubocopo issues in image_settings ctrl spec 2019-10-02 21:26:09 +01:00
luisramos0
6677543de0 bring 2 specs from spree_backend to cover image_settings page and mail_methods page 2019-10-02 21:26:09 +01:00
luisramos0
30aa31252b Fix simple rubocop issues in helpers 2019-10-02 21:26:09 +01:00
luisramos0
b83d74a609 Bring general_settings_helper from spree_backend 2019-10-02 21:26:09 +01:00
luisramos0
d31b50be3d Bring spree/admin configuration routes to ofn 2019-10-02 21:26:09 +01:00
luisramos0
42e3f2f2f4 Convert spree/admin/mail_methods from erb to haml 2019-10-02 21:25:23 +01:00
luisramos0
96737da128 Add spree_backend mail methods views that are missing in ofn 2019-10-02 21:25:23 +01:00
luisramos0
7f9f0d840c Merge decorators into controllers and remove decorators 2019-10-02 21:25:23 +01:00
luisramos0
686840e262 Fix basic rubocop issues in recently added controllers from spree_backend 2019-10-02 21:25:23 +01:00
luisramos0
2377b833ee Bring general settings and image settings controllers that are overrides in ofn to ofn so we can merge them with their decorators in a second step 2019-10-02 21:25:23 +01:00
luisramos0
3f3c33bce6 Fix basic rubocop issues in newly added controller 2019-10-02 21:25:23 +01:00
luisramos0
e35eff95bb Add mail_methods controller from spree_backend related to config 2019-10-02 21:25:23 +01:00
Luis Ramos
e6408161db Merge pull request #4291 from luisramos0/spree_be_config_taxons
Move taxons and taxonomies from spree_backend to OFN
2019-10-02 21:13:12 +01:00
Luis Ramos
4540b32d3a Merge branch 'master' into spree_be_config_taxons 2019-10-02 15:35:15 +01:00
Luis Ramos
9f8d2fddbc Merge pull request #4292 from luisramos0/spree_be_config_tax
Move tax_rates, tax categories and tax settings from spree_backend to OFN
2019-10-02 15:33:32 +01:00
Luis Ramos
14047c620a Merge branch 'master' into spree_be_config_tax 2019-10-02 15:31:25 +01:00
Luis Ramos
2be1c231f7 Merge pull request #4290 from luisramos0/spree_be_config_zones
Move zones, countries and states from spree_backend to OFN
2019-10-02 14:30:59 +01:00
Luis Ramos
c34646724c Merge pull request #4254 from luisramos0/swagger
Update API swagger docs to reflect current API state
2019-10-02 10:31:13 +01:00
Luis Ramos
b731635270 Merge pull request #4303 from luisramos0/missing_translation
Add missing translation for order.shipment.state "on hand" (with a space between on and hand)
2019-10-02 10:27:33 +01:00
Transifex-Openfoodnetwork
c9a62fad4c Updating translations for config/locales/nb.yml 2019-10-02 16:50:07 +10:00
Transifex-Openfoodnetwork
70169d477c Updating translations for config/locales/nb.yml 2019-10-02 16:47:01 +10:00
Transifex-Openfoodnetwork
d95646ea98 Updating translations for config/locales/en_NZ.yml 2019-10-02 14:29:29 +10:00
Transifex-Openfoodnetwork
d50bf928e1 Updating translations for config/locales/de_DE.yml 2019-10-02 10:58:44 +10:00
Luis Ramos
3f7aff4b8b Merge pull request #4305 from luisramos0/new_product_translations
Make translations in new product page relative and specific to the page
2019-10-01 22:38:49 +01:00
dependabot-preview[bot]
de9476a8a5 Bump ddtrace from 0.27.0 to 0.28.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.27.0 to 0.28.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.27.0...v0.28.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-01 21:12:18 +00:00
Sigmund Petersen
5fded022d4 Update README.md
Slack invite link changed
2019-10-01 23:09:47 +02:00
dependabot-preview[bot]
bce41a2247 Bump oauth2 from 1.4.1 to 1.4.2
Bumps [oauth2](https://github.com/oauth-xx/oauth2) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/oauth-xx/oauth2/releases)
- [Changelog](https://github.com/oauth-xx/oauth2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/oauth-xx/oauth2/compare/v1.4.1...v1.4.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-01 21:04:45 +00:00
Pau Pérez Fabregat
1f644f4020 Merge pull request #4281 from Matt-Yorkley/memcached-apm
Add memcached APM
2019-10-01 18:46:22 +02:00
Matt-Yorkley
cc11d4e5f0 Remove unused user parameter from OrdersAndFulfillmentsReport 2019-10-01 15:59:51 +01:00
Pau Pérez Fabregat
5ecac77aa5 Merge branch 'master' into memcached-apm 2019-10-01 16:58:01 +02:00
Matt-Yorkley
a5d2579c69 Pluck line_item ids instead of all line_items 2019-10-01 15:51:45 +01:00
Matt-Yorkley
112adb11db Pass permissions object into OrdersAndFulfillMentsReport 2019-10-01 15:51:43 +01:00
Transifex-Openfoodnetwork
5fdc11bdc7 Updating translations for config/locales/fr.yml 2019-10-01 23:59:19 +10:00
Matt-Yorkley
c038b485b1 Rename service and methods to remove use of "shop" term 2019-10-01 14:43:47 +01:00
Luis Ramos
19eb93012c Merge pull request #4326 from kristinalim/feature/4310-remove_shipments_count
4310 Do not count order shipments in Order#shipping_method
2019-10-01 11:17:42 +01:00
Luis Ramos
d998ec8453 Merge pull request #4331 from openfoodfoundation/dependabot/bundler/uglifier-4.2.0
Bump uglifier from 4.1.20 to 4.2.0
2019-10-01 11:11:35 +01:00
Luis Ramos
0c93665030 Merge pull request #4335 from Matt-Yorkley/remove_deprecations
Remove deprecation warnings from VariantStock methods
2019-10-01 10:59:57 +01:00
Luis Ramos
c4d298d732 Merge branch 'master' into remove_deprecations 2019-10-01 10:57:10 +01:00
dependabot-preview[bot]
36883bc051 [Security] Bump rubyzip from 1.2.2 to 1.3.0
Bumps [rubyzip](https://github.com/rubyzip/rubyzip) from 1.2.2 to 1.3.0. **This update includes a security fix.**
- [Release notes](https://github.com/rubyzip/rubyzip/releases)
- [Changelog](https://github.com/rubyzip/rubyzip/blob/master/Changelog.md)
- [Commits](https://github.com/rubyzip/rubyzip/compare/v1.2.2...v1.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-10-01 09:55:53 +00:00
Luis Ramos
8c252fc160 Merge pull request #4341 from openfoodfoundation/dependabot/bundler/webmock-3.7.6
Bump webmock from 3.7.5 to 3.7.6
2019-10-01 10:53:54 +01:00
Pau Pérez Fabregat
c2f8803d72 Merge pull request #4297 from luisramos0/inv_levels
Remove all usages of Spree Config track_inventory_levels
2019-10-01 10:35:20 +02:00
dependabot-preview[bot]
07967275d8 Bump webmock from 3.7.5 to 3.7.6
Bumps [webmock](https://github.com/bblimke/webmock) from 3.7.5 to 3.7.6.
- [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.7.5...v3.7.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-30 22:02:54 +00:00
Sigmund Petersen
c7db1b7fc0 Delete ISSUE_TEMPLATE.md
This ISSUE_TEMPLATE.md file is the old way of handling templates on Github. OFN is now using the new method for handling templates, so this file can be removed. 
This template still comes up as 'Default template' when opening an issue from the Zenhub board. This gives 2 almost equal template choices which is confusing.
2019-09-30 21:18:51 +02:00
Rachel Arnould
fa57d71a23 Merge pull request #4332 from openfoodfoundation/RachL-patch-2
Update story template
2019-09-30 20:06:12 +02:00
Rachel Arnould
be5e7bd18d Merge pull request #4330 from openfoodfoundation/RachL-patch-1
Update bug template
2019-09-30 20:05:51 +02:00
Transifex-Openfoodnetwork
5cfc2613ac Updating translations for config/locales/en_GB.yml 2019-10-01 04:01:28 +10:00
Transifex-Openfoodnetwork
903eb23122 Updating translations for config/locales/en_GB.yml 2019-10-01 03:58:19 +10:00
Luis Ramos
d162e8c087 Merge pull request #4300 from daningenthron/daningenthron/add-a-new-card
Translation: "Add new credit card"
2019-09-30 13:27:25 +01:00
Luis Ramos
75a56c2be5 Merge pull request #4293 from jasonk357/4031-change-user-email-alert
Improve user email change flash alert message
2019-09-30 13:19:40 +01:00
Luis Ramos
07a5963554 Merge pull request #4311 from mkllnk/rails3-deprecations
Replace deprecated validates_presence_of
2019-09-30 13:19:25 +01:00
luisramos0
a6888cf0be Update all locales with the latest Transifex translations 2019-09-30 13:15:45 +01:00
Luis Ramos
ef35db6db2 Merge pull request #4296 from luisramos0/subs_line_items
Make subscription line items handle soft deleted variants
2019-09-30 13:07:10 +01:00
Rachel Arnould
375d4fbffd Add workaround item 2019-09-30 11:02:36 +02:00
Matt-Yorkley
6153789055 Eager-load serialized objects in variant query 2019-09-29 20:44:48 +01:00
Matt-Yorkley
032741c54f Refactor ProductsRenderer variants queries
This removes another N+1 and allows pagination applied to the inital query to also affect the returned variants
2019-09-29 17:41:58 +01:00
Matt-Yorkley
e9acf6e0de Refactor #load_products and memoize 2019-09-29 14:30:04 +01:00
Matt-Yorkley
d5e90c3c6c Extract #load_products logic into a new service 2019-09-29 00:10:47 +01:00
Matt-Yorkley
7e7429446d Remove deprecation warnings from VariantStock methods 2019-09-27 17:28:16 +01:00
Matt-Yorkley
535e389fb4 Query variant stock including overrides
This allows the results to be properly filtered and paginated whilst showing the correct stock, and removes a big N+1
2019-09-27 17:25:52 +01:00
Matt-Yorkley
cecebb82f4 Move distributed products relation out from OrderCycleDistributedProducts 2019-09-27 17:25:50 +01:00
Pau Pérez Fabregat
49665ae360 Merge pull request #4167 from luisramos0/last_dedeface
Move app_wrapper deface to spree/layouts/admin view
2019-09-27 09:21:28 +02:00
Pau Pérez Fabregat
7e5c194515 Merge pull request #4295 from coopdevs/enable-datadog-analytics
Enable trace & search analytics in Datadog
2019-09-27 09:17:03 +02:00
Matt-Yorkley
fe0b3172c7 Move scoper to method 2019-09-27 01:52:45 +01:00
Matt-Yorkley
5b27ed6b9f Remove unnecessary #deleted? check
It should be included in te default product scope
2019-09-27 01:52:29 +01:00
Matt-Yorkley
bef4741e31 Enable analytics in all APM services 2019-09-26 22:38:20 +01:00
Rachel Arnould
d604328bfb Update story template 2019-09-26 21:25:01 +02:00
dependabot-preview[bot]
2af3de51c7 Bump uglifier from 4.1.20 to 4.2.0
Bumps [uglifier](https://github.com/lautis/uglifier) from 4.1.20 to 4.2.0.
- [Release notes](https://github.com/lautis/uglifier/releases)
- [Changelog](https://github.com/lautis/uglifier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/lautis/uglifier/compare/v4.1.20...v4.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-26 19:21:05 +00:00
Rachel Arnould
d0c77a8dc4 Update bug template 2019-09-26 21:20:50 +02:00
Kristina Lim
8fc4ca6f65 Do not use OrderAndFulfillmentsReport#find_variant 2019-09-26 11:45:05 +08:00
Kristina Lim
721a0d3a98 Do not count order shipments in Order#shipping_method 2019-09-26 11:01:06 +08:00
JASON KNOEPFLER
c46fe7b675 encapsulate new unconfirmed email logic 2019-09-25 19:41:33 -07:00
luisramos0
bb372984e1 Deleting old pt-BR translations file, it's now called pt_BR with underscore 2019-09-25 11:26:06 +01:00
Luis Ramos
2489a2f5f5 Merge pull request #4294 from openfoodfoundation/transifex
Transifex
2019-09-25 11:22:58 +01:00
Transifex-Openfoodnetwork
a6698230fe Updating translations for config/locales/en_NZ.yml 2019-09-25 20:13:57 +10:00
luisramos0
50731e929e Remove some attributes from test as they are already verified subsequently 2019-09-25 09:54:33 +01:00
luisramos0
baa09b88f7 Fix issue with nil current_order where shipping_method serializer requires a current_order to calculate the shipping fees 2019-09-25 09:52:10 +01:00
Luis Ramos
2f3509bf9b Merge pull request #4287 from luisramos0/mini_racer
Replace therubyracer with mini_racer.
2019-09-24 19:48:50 +01:00
Dan Ingenthron
e8f9ace8e6 Correct translation key on add card link 2019-09-24 13:42:31 -05:00
Luis Ramos
04270b6cec Merge pull request #4286 from luisramos0/transpec
Finish transpec
2019-09-24 19:33:26 +01:00
Matt-Yorkley
1155931ea9 Merge pull request #4280 from luisramos0/knapsack
Update knapsack report
2019-09-24 19:26:27 +01:00
Maikel Linke
efd450606e Replace deprecated validates_presence_of
This syntax has been deprecated in Rails 3:
https://guides.rubyonrails.org/3_0_release_notes.html#patches-and-deprecations
2019-09-24 19:16:05 +10:00
luisramos0
2f60a85593 Improve spec/controllers/api/orders_controller_spec, make it more readable 2019-09-23 23:50:42 +01:00
luisramos0
78cf35807a Improve preloading of order query to avoid N+1 queries 2019-09-23 23:50:39 +01:00
luisramos0
f3bc038c05 Make translations in new product page relative and specific to the page 2019-09-23 17:02:30 +01:00
luisramos0
7817a40a35 Add missing translation for shipment state on hand with space between on and hand 2019-09-23 16:33:59 +01:00
Transifex-Openfoodnetwork
a18f6f5b8f Updating translations for config/locales/fr_CA.yml 2019-09-24 01:01:41 +10:00
Transifex-Openfoodnetwork
403653381c Updating translations for config/locales/en_CA.yml 2019-09-24 00:59:20 +10:00
luisramos0
eb85dccac1 Remove single letter variable names 2019-09-22 21:07:32 +01:00
luisramos0
f32454b404 Add feature spec to validate unit_description is editable for products with unit items, regression for #3649 2019-09-22 21:02:32 +01:00
luisramos0
591efecde6 Make unit description field visible in the variant edit page even for products which variant_unit is items 2019-09-22 16:42:03 +01:00
luisramos0
24afa21885 Revert "Change products controller to clear variants unit description if variant_unit is items"
This reverts commit 1a4e83d633.
2019-09-22 16:31:26 +01:00
luisramos0
cd6d34663e Remove all usages of Spree Config track_inventory_levels, this is always true in OFN since v2.0.0 2019-09-22 15:25:24 +01:00
luisramos0
c66e5fe1e9 Make subscription line items handle soft deleted variants
This ensures subscription list page works. The variant can be removed from the subscription by the user in the edit subscription page
2019-09-22 14:59:59 +01:00
JASON KNOEPFLER
4ec8fcd3a6 Assign flash message var from conditional return 2019-09-21 08:10:58 -07:00
Pau Perez
88893a2968 Enable trace & search analytics in Datadog
This will enrich the quality of the reported traces for all web
frameworks in our stack. That means not only memcached as we did in
https://github.com/openfoodfoundation/openfoodnetwork/pull/4266 but
PostgreSQL and Rails too.

After enabling, the Trace Search & Analytics page populates which allows
us to search traces and add APM queries to dashboards.
2019-09-21 14:09:27 +02:00
JASON KNOEPFLER
62599e8dfc Edit user email feature spec 2019-09-20 15:28:25 -07:00
Transifex-Openfoodnetwork
b97c428f72 Updating translations for config/locales/pt_BR.yml 2019-09-21 04:00:00 +10:00
Transifex-Openfoodnetwork
42b074f02e Updating translations for config/locales/pt_BR.yml 2019-09-21 03:56:52 +10:00
JASON KNOEPFLER
07e0951490 Change users#update email change flash alert 2019-09-20 10:35:25 -07:00
luisramos0
fc433ff8f0 Refactor ship methods controller destroy action: remove single action before_filter 2019-09-20 16:29:36 +01:00
luisramos0
8e33437fbb MErge ship method controller decorator with the controller that came from spree 2019-09-20 15:59:24 +01:00
luisramos0
a5103c737d Fix rubocop issues in ship methods controller from spree 2019-09-20 15:58:05 +01:00
luisramos0
37c8f42244 Bring shipping methods and categories controllers from spree_backend 2019-09-20 15:56:24 +01:00
luisramos0
0e8765636b Bring tax_settings from spree_backend to ofn 2019-09-20 15:46:33 +01:00
luisramos0
6855e5c8f4 Fix rubocop issues in feature spec 2019-09-20 15:43:55 +01:00
luisramos0
a96b56239c Transpec feature specs brought from spre_backend 2019-09-20 15:43:55 +01:00
luisramos0
4f9eee2682 Fix feature specs added from spree_backend in the configuration area 2019-09-20 15:43:55 +01:00
luisramos0
44761315c2 Bring feature specs for configuration pages from spree_backend 2019-09-20 15:43:55 +01:00
luisramos0
0d18b1a032 Bring spree/admin configuration routes to ofn 2019-09-20 15:43:55 +01:00
luisramos0
cc0dabcd1e Convert spree/admin/tax_rates from erb to haml 2019-09-20 15:36:58 +01:00
luisramos0
e79c672263 Convert spree/admin/tax_categories from erb to haml 2019-09-20 15:36:54 +01:00
luisramos0
bc6f7934e0 Add spree_backend views related to admin/configuration menu that are missing in ofn 2019-09-20 15:35:49 +01:00
luisramos0
89029f46f9 Fix basic rubocop issues in newly added controller 2019-09-20 15:32:34 +01:00
luisramos0
144369e55f Add tax related controllers from spree_backend related to config 2019-09-20 15:31:30 +01:00
luisramos0
3833cbbf73 Fix rubocop issues in feature spec 2019-09-20 15:24:26 +01:00
luisramos0
5b703a02cd Transpec feature spec brought from spree_backend 2019-09-20 15:24:26 +01:00
luisramos0
1d4aebd3f9 Fix feature spec added from spree_backend 2019-09-20 15:24:15 +01:00
luisramos0
845a764320 Bring taxonomies feature spec from spree_backend 2019-09-20 15:24:06 +01:00
luisramos0
c66579a22f Fix simple rubocop issues in helper 2019-09-20 15:24:06 +01:00
luisramos0
9291bf5c82 Bring taxons_helper from spree 2019-09-20 15:24:06 +01:00
luisramos0
4781ab93ef Bring spree/admin configuration routes to ofn 2019-09-20 15:24:06 +01:00
luisramos0
def9ab7c47 Convert spree/admin/taxons from erb to haml 2019-09-20 15:24:06 +01:00
luisramos0
2a68d34fb0 Convert spree/admin/taxonomies from erb to haml 2019-09-20 15:24:06 +01:00
luisramos0
2ce56aef2c Add spree_backend views related to admin/configuration taxonomies that are missing in ofn 2019-09-20 15:23:45 +01:00
luisramos0
20f965731d Fix basic rubocop issues in recently added controller from spree_backend 2019-09-20 15:14:34 +01:00
luisramos0
8378dce752 Bring taxons config controller that is overriden in ofn to ofn so we can merge them with their decorator in a second step 2019-09-20 15:13:45 +01:00
luisramos0
d7a4e3a896 Add taxonomies controller from spree_backend 2019-09-20 15:12:38 +01:00
luisramos0
7d9de0ca70 Fix rubocop issues in feature specs 2019-09-20 15:07:34 +01:00
luisramos0
f9c6f09cd4 Transpec feature specs brought from spre_backend 2019-09-20 15:06:02 +01:00
luisramos0
4a83eca832 Fix feature specs added from spree_backend in the configuration area 2019-09-20 15:05:21 +01:00
luisramos0
4954db64b3 Bring feature specs for configuration pages from spree_backend 2019-09-20 15:04:45 +01:00
luisramos0
b2c4b97d94 Bring spree/admin configuration routes to ofn 2019-09-20 15:02:01 +01:00
luisramos0
32c1eecece Convert spree/admin/zones from erb to haml 2019-09-20 15:01:06 +01:00
luisramos0
6d8c7a4bee Fix minor detail in states and countries views 2019-09-20 14:57:48 +01:00
luisramos0
bd2045cad7 Convert spree/admin/states from erb to haml 2019-09-20 14:55:36 +01:00
luisramos0
e1c3d2442a Convert spree/admin/countries from erb to haml 2019-09-20 14:55:10 +01:00
luisramos0
3df65d0463 Add spree_backend views related to admin/configuration menu that are missing in ofn 2019-09-20 14:54:55 +01:00
luisramos0
822a17f732 Fix basic rubocop issues in newly added controllers 2019-09-20 14:50:38 +01:00
luisramos0
ffde0307e2 Add controllers from spree_backend related to config 2019-09-20 14:50:01 +01:00
luisramos0
9e57807dc2 Replace therubyracer with mini_racer.
This is being replaced to increase the reliability and speed of asset compilation.
2019-09-20 11:22:07 +01:00
luisramos0
052bac196b Fix problem in spec/features/consumer/shopping/shopping_spec introduced with transpec 2019-09-20 10:33:40 +01:00
luisramos0
00e789b95b Force use of expect over should in spec expectations 2019-09-20 10:29:56 +01:00
luisramos0
a004822019 Transpec spec/features/consumer/shopping/shopping_spec 2019-09-20 10:16:08 +01:00
luisramos0
49f7b4c8e2 Transpec spec/features/consumer/shopping/cart_spec.rb 2019-09-20 10:11:02 +01:00
luisramos0
8b503b51ca Fix typo in spec name 2019-09-20 10:03:52 +01:00
luisramos0
4e431ecf18 Transpec spec/features/consumer/shopping/products_spec.rb 2019-09-20 10:02:27 +01:00
luisramos0
81f8b127db Transpec spec/features/consumer/authentication_spec.rb and spec/features/consumer/producers_spec.rb 2019-09-20 09:53:23 +01:00
luisramos0
f9f81086fd Transpec features/consumer/shopping/variant_overrides_spec 2019-09-20 09:02:43 +01:00
Luis Ramos
9807b432f9 Merge pull request #4272 from openfoodfoundation/dependabot/bundler/webmock-3.7.5
Bump webmock from 3.7.4 to 3.7.5
2019-09-20 08:42:12 +01:00
luisramos0
6b0f3cd4f3 Transpec spec/performance/shop_controller_spec 2019-09-19 20:36:33 +01:00
luisramos0
3c412b7b7d Transpec spec/controllers/api/taxonomies_controller_spec, spec/controllers/api/taxons_controller_spec and spec/models/enterprise_spec 2019-09-19 20:34:30 +01:00
luisramos0
c4e6c0af2b Transpec features/consumer/registration_spec 2019-09-19 20:18:24 +01:00
Matt-Yorkley
e6387197ec Add memcached APM 2019-09-19 19:48:16 +01:00
Luis Ramos
746c4f03f6 Merge pull request #4261 from jasonk357/3979-malformed-referer-error
Guard against malformed request referer
2019-09-19 17:29:18 +01:00
Kristina Lim
3535c4d564 Merge pull request #4240 from Matt-Yorkley/backorder_to_the_future_2
Disentangle on_demand and backordered
2019-09-20 00:05:27 +08:00
luisramos0
37abdb7727 Update knapsack report 2019-09-19 16:58:06 +01:00
luisramos0
bdb3dd5aaf Fix long lines in app/serializers 2019-09-19 16:32:09 +01:00
luisramos0
25fbab2e37 Use memoized order method 2019-09-19 16:32:09 +01:00
luisramos0
4d37aaac64 Use have_http_status and remove check for error message, that's something for the base_controller test to test 2019-09-19 16:32:09 +01:00
luisramos0
19e28cb14a Make spec/controllers/api/orders_controller_spec more simple assuming adjustments will always come in the same order 2019-09-19 16:32:09 +01:00
luisramos0
a44a251d96 Remove duplicated attributes tag from all serializers to create consistency 2019-09-19 16:32:09 +01:00
luisramos0
2921ee19e1 Add api/order/{order_number} ednpoint and its new order detailed serializer 2019-09-19 16:32:09 +01:00
luisramos0
6796d91a07 Add some basic attributes to address and order serializers that will be used in the order show api endpoint 2019-09-19 16:32:09 +01:00
luisramos0
69afcf7510 Improve readability in order permissions 2019-09-19 16:32:09 +01:00
dependabot-preview[bot]
47056e3cc1 Bump webmock from 3.7.4 to 3.7.5
Bumps [webmock](https://github.com/bblimke/webmock) from 3.7.4 to 3.7.5.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.7.4...v3.7.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-19 13:10:20 +00:00
Kristina Lim
311ee92e84 Update all locales with the latest Transifex translations 2019-09-19 17:08:17 +08:00
Kristina Lim
241e97d938 Merge pull request #4241 from openfoodfoundation/transifex
Transifex
2019-09-19 16:58:57 +08:00
Pau Pérez Fabregat
85b1ba8eae Merge pull request #4263 from coopdevs/index-frequent-spree-orders-query
Index spree_orders on various columns
2019-09-19 10:12:54 +02:00
Pau Pérez Fabregat
baa4783141 Merge pull request #4260 from jasonk357/4184-delivery-report-default-range
Add default date range to Delivery Report
2019-09-19 09:58:06 +02:00
Transifex-Openfoodnetwork
ce40fcaf7b Updating translations for config/locales/fr.yml 2019-09-19 07:44:00 +10:00
Luis Ramos
40438de7fe Merge pull request #4250 from Matt-Yorkley/ruby-2.1.9
Bump Ruby version from 2.1.5 to 2.1.9
2019-09-18 11:39:15 +01:00
Luis Ramos
29dcd96fca Merge pull request #4265 from openfoodfoundation/dependabot/bundler/simplecov-0.17.1
Bump simplecov from 0.17.0 to 0.17.1
2019-09-18 10:25:54 +01:00
Pau Pérez Fabregat
7fd6a7e654 Merge pull request #4270 from openfoodfoundation/dependabot/bundler/webmock-3.7.4
Bump webmock from 3.7.3 to 3.7.4
2019-09-18 10:11:11 +02:00
dependabot-preview[bot]
8f2a80f199 Bump webmock from 3.7.3 to 3.7.4
Bumps [webmock](https://github.com/bblimke/webmock) from 3.7.3 to 3.7.4.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.7.3...v3.7.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-17 19:21:37 +00:00
Pau Perez
ea41405209 Index spree_orders on various columns
The following query

```sql
SELECT spree_orders . *
FROM spree_orders
WHERE spree_orders . user_id = ?
AND spree_orders . completed_at IS ?
AND spree_orders . created_by_id = ?
ORDER BY created_at DESC LIMIT ?
```

performs quite badly even though LIMIT is always 1 because:

* ORDER BY requires sorting by a column which is not indexed therefore
a sequential scan is performed.
* Although `completed_at` is indexed, `user_id` and `created_by_id` are
not causing a sequential scan.

To make it worse this query is executed very often in the following
controllers among others also related to checkout:

* CartController#populate
* EnterprisesController#Shop
* LineItemsController#bought
* ShopController#products
* ShopController#order_cycle

In some cases this query alone accounts for 66.8% of the total time
of the endpoint.

Results

See by yourself. We move from 56.643ms to 0.077ms. Pretty neat.

```
openfoodnetwork=> explain analyze SELECT "spree_orders".* FROM "spree_orders" WHERE "spree_orders"."user_id" = 1 AND "spree_orders"."completed_at" IS NULL AND "spree_orders"."created_by_id" = 1 ORDER BY created_at DESC LIMIT 1;
                                                        QUERY PLAN
--------------------------------------------------------------------------------------------------------------------------
 Limit  (cost=11753.03..11753.04 rows=1 width=195) (actual time=56.580..56.580 rows=0 loops=1)
   ->  Sort  (cost=11753.03..11753.04 rows=1 width=195) (actual time=56.578..56.578 rows=0 loops=1)
         Sort Key: created_at DESC
         Sort Method: quicksort  Memory: 25kB
         ->  Seq Scan on spree_orders  (cost=0.00..11753.02 rows=1 width=195) (actual time=56.571..56.571 rows=0 loops=1)
               Filter: ((completed_at IS NULL) AND (user_id = 1) AND (created_by_id = 1))
               Rows Removed by Filter: 256135
 Planning time: 0.252 ms
 Execution time: 56.643 ms
(9 rows)

openfoodnetwork=> CREATE INDEX ON spree_orders (completed_at, user_id, created_by_id, created_at);
CREATE INDEX
openfoodnetwork=> explain analyze SELECT "spree_orders".* FROM "spree_orders" WHERE "spree_orders"."user_id" = 1 AND "spree_orders"."completed_at" IS NULL AND "spree_orders"."created_by_id" = 1 ORDER BY created_at DESC LIMIT 1;
mit  (cost=8.45..8.46 rows=1 width=195) (actual time=0.030..0.030 rows=0 loops=1)
   ->  Sort  (cost=8.45..8.46 rows=1 width=195) (actual time=0.029..0.029 rows=0 loops=1)
         Sort Key: created_at DESC
         Sort Method: quicksort  Memory: 25kB
         ->  Index Scan using spree_orders_completed_at_user_id_created_by_id_created_at_idx on spree_orders  (cost=0.42..8.44 rows=1 width=195) (actual time=0.021..0.021 rows=0 loops=1)
               Index Cond: ((completed_at IS NULL) AND (user_id = 1) AND (created_by_id = 1))
 Planning time: 0.199 ms
 Execution time: 0.077 ms
```
2019-09-17 17:02:14 +02:00
luisramos0
2683efdd3c Add missing update to db/schema by running db:migrate
This was missed in PR 4242
2019-09-17 15:27:56 +01:00
Luis Ramos
ed1c154b78 Merge pull request #4252 from luisramos0/remove_clear_ship_address
On checkout of pickup orders, set ship_address to shipping_address_from_distributor instead of empty Spree::Address.default
2019-09-17 13:18:20 +01:00
Pau Pérez Fabregat
4aba2730f7 Merge pull request #4230 from openfoodfoundation/dependabot/bundler/ddtrace-0.27.0
Bump ddtrace from 0.26.0 to 0.27.0
2019-09-17 13:11:12 +02:00
Pau Pérez Fabregat
07ae51560e Merge pull request #4259 from openfoodfoundation/dependabot/bundler/webmock-3.7.3
Bump webmock from 3.7.2 to 3.7.3
2019-09-17 09:32:21 +02:00
dependabot-preview[bot]
3c5c842bbf Bump simplecov from 0.17.0 to 0.17.1
Bumps [simplecov](https://github.com/colszowka/simplecov) from 0.17.0 to 0.17.1.
- [Release notes](https://github.com/colszowka/simplecov/releases)
- [Changelog](https://github.com/colszowka/simplecov/blob/master/CHANGELOG.md)
- [Commits](https://github.com/colszowka/simplecov/compare/v0.17.0...v0.17.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-16 21:08:17 +00:00
Luis Ramos
e7e4508555 Merge pull request #4242 from Matt-Yorkley/another_cartastrophe
Soft-delete price objects
2019-09-16 17:18:39 +01:00
Luis Ramos
9a3b5d0700 Merge pull request #4257 from daningenthron/daningenthron/payment-method-translation
Fix typo on 'no payment methods' translation keys
2019-09-16 13:18:46 +01:00
Luis Ramos
46353be9a3 Merge pull request #4237 from coopdevs/unobfuscate-bulk-management-action
Add implicit #bulk_management including filter
2019-09-15 12:15:11 +01:00
JASON KNOEPFLER
91a52ead58 Guard against malformed request referer 2019-09-14 09:13:44 -07:00
JASON KNOEPFLER
0f55049eda OrderCycleManagementReport sets default date range before querying for orders 2019-09-13 17:15:57 -07:00
Luis Ramos
83f1a7a9a9 Merge pull request #4258 from coopdevs/fix-test-example-name
Fix test example name
2019-09-13 23:04:45 +01:00
dependabot-preview[bot]
fac118fce2 Bump webmock from 3.7.2 to 3.7.3
Bumps [webmock](https://github.com/bblimke/webmock) from 3.7.2 to 3.7.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.7.2...v3.7.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-13 19:19:34 +00:00
Dan Ingenthron
5270cdaa32 Fixed typo on 'no payment methods' translation keys
Modified to remove edits to translation files. These will be updated via Transifex webhook.
2019-09-13 13:43:13 -05:00
luisramos0
caebcdf184 Add correct schemas for EnterpriseShopfront and Variant (not Api::Admin::VariantSerializer but Api::VariantSerializer) 2019-09-13 15:33:54 +01:00
luisramos0
c66a659e8e Fix /products payloads: product, variants and variant overrides 2019-09-13 14:55:18 +01:00
luisramos0
b8b107dd2d Fix api_key header name 2019-09-13 14:27:39 +01:00
Luis Ramos
ecf336fe51 Merge pull request #4244 from luisramos0/fix_truncate_data
Adapt db truncate task to ofn v2 by removing db tables from v1
2019-09-13 13:09:07 +01:00
Matt-Yorkley
a3efd13d46 Update existing Spree::InventoryItem records: change backordered state to on_hand. 2019-09-13 13:05:15 +01:00
Matt-Yorkley
2ff0169016 Replace hard-deleted prices with empty (0.00) price records 2019-09-13 12:55:24 +01:00
Pau Perez
08d37bbed7 Fix test example name
The name wasn't reflecting the method being tested.
2019-09-13 12:55:34 +02:00
Transifex-Openfoodnetwork
b71443ccd8 Updating translations for config/locales/ca.yml 2019-09-13 20:45:12 +10:00
Transifex-Openfoodnetwork
8fd3d9e03c Updating translations for config/locales/es.yml 2019-09-13 20:42:43 +10:00
Transifex-Openfoodnetwork
787727872f Updating translations for config/locales/ca.yml 2019-09-13 20:42:04 +10:00
Pau Pérez Fabregat
5bf72ae780 Merge pull request #4234 from coopdevs/remove-hidden-integrity-check
Remove integrity check for deleted variants in OCs
2019-09-13 11:27:41 +02:00
Pau Pérez Fabregat
290d00f17d Merge pull request #4232 from coopdevs/remove-guard
Remove Guard and Guard-related gems
2019-09-13 11:25:29 +02:00
Pau Perez
3d7bbbbb19 Remove unused Guardfile 2019-09-13 08:25:54 +02:00
luisramos0
3d32987227 Fix taxonomies to represent the endpoints in OFN 2019-09-12 19:52:13 +01:00
luisramos0
902e51e580 Add api/customers endpoints 2019-09-12 19:11:53 +01:00
luisramos0
743cb3b33a Add update product image endpoint and delete enterprise fees endpoint 2019-09-12 18:02:06 +01:00
luisramos0
74e49787f4 Add the remaining missing enterprises endpoints 2019-09-12 15:16:35 +01:00
luisramos0
afa8f97627 Add post and put on enterprises and fix details in shipments endpoints 2019-09-12 13:42:40 +01:00
luisramos0
6e677fecce Remove now inexistent endpoints /new 2019-09-12 13:19:43 +01:00
luisramos0
889a3e6d9d Improve file layout and move Order model to correct place 2019-09-12 13:15:40 +01:00
luisramos0
664be47ac3 Add endpoints for /orders/shipments 2019-09-12 13:08:39 +01:00
Sigmund Petersen
fd77f48aca Merge pull request #4253 from openfoodfoundation/RachL-patch-1
Update Slack invite link
2019-09-12 09:17:37 +02:00
Rachel Arnould
9a31b99de6 Update missing second link 2019-09-11 15:52:44 +02:00
luisramos0
0e4b5ad9ec Remove now gone orders/{order_number} endpoint and its models, may be readded in the near future but the models may be different as these docs refer to the now gone spree_api order rabl representation 2019-09-11 11:35:01 +01:00
luisramos0
5634f4af18 Move orders endpoints above in the file as they are the most important endpoints 2019-09-11 11:34:57 +01:00
luisramos0
0dede39617 Make list of /products/{product_id}/variants endpoints correct according to current code 2019-09-11 11:15:55 +01:00
Transifex-Openfoodnetwork
d98e302047 Updating translations for config/locales/nb.yml 2019-09-11 19:47:09 +10:00
luisramos0
377b4a3755 Do not add ng-controller if main_ng_ctrl_name is not set 2019-09-11 10:36:19 +01:00
luisramos0
0c809b2911 Remove now unused override app_wrapper 2019-09-11 10:35:39 +01:00
luisramos0
33472014f1 Do not add main_ng_app_name if it is not defined 2019-09-11 10:32:30 +01:00
luisramos0
d038c27f1f Fix app_wrapper_attr code by making the content_for tag be only the name of the ng-app and ng-ctrller 2019-09-11 10:32:30 +01:00
luisramos0
3d718d9738 Move admin layout body contents to a separate partial 2019-09-11 10:32:29 +01:00
Luis Ramos
500ef901fd Merge pull request #4164 from luisramos0/little_de_deface
Remove some unused deface overrides and move some others to their views
2019-09-11 10:26:56 +01:00
Matt-Yorkley
a15db65e69 Reload tested variant and price objects 2019-09-11 04:32:19 +01:00
Matt-Yorkley
64a501ee20 Don't index new deleted_at column for spree_prices 2019-09-11 04:29:02 +01:00
Matt-Yorkley
95fcff8bb1 Add migration to remove broken variants from open carts 2019-09-11 04:29:00 +01:00
luisramos0
a2e6b84db2 List the actual actions available in the api/products endpoint 2019-09-10 17:22:52 +01:00
luisramos0
d319f97733 Remove now unexisting endpoints zones, states and countries 2019-09-10 12:36:34 +01:00
Luis Ramos
c0bf7e2e75 Merge pull request #4236 from mkllnk/4222-checkout-paypal-error-handling
4233 Add missing Spree route for Paypal
2019-09-10 12:24:21 +01:00
Luis Ramos
1d177a164b Merge pull request #4247 from mkllnk/4243-inventory-pagination
4243 Restore old pagination API for inventory products
2019-09-10 11:35:04 +01:00
Rachel Arnould
d846c31db9 Update Slack invite link
Updated Slack invite link in README
2019-09-10 09:51:59 +02:00
Maikel Linke
efd01f8c9e Move new inventory spec to existing variant overrides spec
I decided to not share the same data setup with the other parts of the
spec because we don't need as much data and it's slow to create.
2019-09-10 10:05:23 +10:00
luisramos0
fb65c64c68 Keep the ship_address clearing logic (this time reusing the OrderUpdate method) thus making the restart_checkout process work for these cases (because order.ship_address is not empty)
OrderUpdater#shipping_address_from_distributor uses order.address_from_distributor to set order.ship_address when order is not delivery: this will clear the ship address as it was done previously without setting an empty address like Spree::Address.default
2019-09-09 22:05:20 +01:00
Transifex-Openfoodnetwork
b8d8ee4edc Updating translations for config/locales/en_GB.yml 2019-09-10 05:14:09 +10:00
Luis Ramos
936784404e Merge pull request #4112 from luisramos0/convert_shipments_rabl
Convert spree/api/shipments views from rabl to ams
2019-09-09 18:34:02 +01:00
Matt-Yorkley
11ea852211 Add migration to reset negative stock levels to zero 2019-09-09 17:49:58 +01:00
Matt-Yorkley
4656c35f71 Don't change on_demand variant's stock when updating shipments 2019-09-09 17:49:58 +01:00
Matt-Yorkley
254315b79e Don't mark on_demand items and shipments as "backordered" 2019-09-09 17:49:56 +01:00
luisramos0
cc7461e692 Remove clear_ship_address from checkout_controller because it is setting an empty address on order.ship_address which is breaking the reset_checkout process in some cases.
This logic is already repeated in the before_save hook in the OrderUpdater where the distributor address is put into the ship_address on order.finalize

In cases the order is not to be finalized we keep the ship_address sent from the client as we may need it to make the order workflow work properly
2019-09-09 17:48:17 +01:00
luisramos0
c4d5eec7fd Covering restart_checkout code with more tests to clarify behaviour with different order.ship_address objects
The edge case here is when ship_address is present but empty, on the checkout_controller we are going to move from using an empty ship_address to using a non-empty one. We keep the original case where this spec was testing with a nil order.ship_address
2019-09-09 17:48:04 +01:00
Luis Ramos
2dc85463ce Merge pull request #4226 from HugsDaniel/4090-missing-translations-order
Add missing translations for orders
2019-09-09 15:16:47 +01:00
Matt-Yorkley
aa3bd93ad0 Bump Ruby version to 2.1.9 2019-09-09 12:22:20 +01:00
Maikel Linke
24c8bb95cb Restore old pagination API for products
It's still used by the inventory page. This is an easy fix that I can
deploy without risk. A rewrite of the inventory pagination should
follow.
2019-09-09 14:53:04 +10:00
Maikel Linke
2e361baeaa Ignore block length cop for feature and scenario
They are typically long and that's okay, same with `describe` and `it`.
2019-09-09 14:53:04 +10:00
luisramos0
a98a0bd264 Adapt db truncate task to ofn v2 by removing db tables from v1 2019-09-08 14:05:49 +01:00
luisramos0
b4de8ef899 Make enterprises/index_spec a bit more resilient 2019-09-08 12:17:36 +01:00
luisramos0
f0586af1c7 Re-organized api/orders resource routes 2019-09-08 12:17:36 +01:00
luisramos0
e9b5551c0f Adpat shipment controller to move out of Spree namespace 2019-09-08 12:17:36 +01:00
luisramos0
7cec24f1d4 Move shipments route, controller and ctrl spec from spree/api to api 2019-09-08 12:17:36 +01:00
luisramos0
26f5ece7c0 Add a few relevant attributes to shipment serializer and fix some details in shipment controller spec 2019-09-08 12:15:33 +01:00
luisramos0
a21a4aba5d Convert spree/api/shipments from rabl to AMS and adapt its spec 2019-09-08 12:15:33 +01:00
Matt-Yorkley
f413ce2a27 Soft-delete price objects 2019-09-06 17:50:19 +01:00
Transifex-Openfoodnetwork
5847b1a51e Updating translations for config/locales/en_ZA.yml 2019-09-07 01:50:35 +10:00
Transifex-Openfoodnetwork
f51ebc63c3 Updating translations for config/locales/en_AU.yml 2019-09-07 01:47:27 +10:00
Pau Pérez Fabregat
908e1dfcaf Merge pull request #4202 from coopdevs/remove-skylight
Remove Skylight
2019-09-06 17:09:14 +02:00
Matt-Yorkley
5bc2c96248 Add specs for existing on_demand behaviour 2019-09-06 15:47:59 +01:00
Pau Perez
ab8c7bad76 Remove Skylight
Since we adopted Skylight to get response times across endpoints and
instances, we failed to get accurate numbers. Our Rails version is not
supported and thus Skylight fails to provide data for the slowest
endpoints, the ones we care about the most. Even with a supported one we
could potentially hit any limits on tracing and have the same problem.

Recently, we started paying for Datadog's APM and the experience,
although it's still early, has been better. It makes it possible to
correlate between services and other metrics which helps spotting the
underlying issues.

Therefore, having two agents running on the server consumes system
resources so we better get rid of Skylight's one.
2019-09-06 16:25:33 +02:00
Pau Perez
55883a0efc Add implicit #bulk_management including filter
OFN it's hard enough. No need to abuse implicitness making things very
hard to follow.

I've spent around 20min trying to find out where this controller action
was implemented until I realized Rails renders the matching view if no
controller action is defined.

Making it git-greppable makes it a bit easier next time.
2019-09-06 16:02:44 +02:00
Pau Pérez Fabregat
2e519957ec Merge pull request #4231 from openfoodfoundation/dependabot/bundler/webmock-3.7.2
Bump webmock from 3.7.1 to 3.7.2
2019-09-06 13:31:55 +02:00
Pau Pérez Fabregat
cd5b3c7393 Merge pull request #4229 from openfoodfoundation/dependabot/bundler/bugsnag-6.12.1
Bump bugsnag from 6.12.0 to 6.12.1
2019-09-06 13:08:47 +02:00
Maikel Linke
eb9f02f3bd Add missing Spree route for Paypal 2019-09-06 19:07:41 +10:00
Maikel Linke
a1f3e8205f Add spec for failing Paypal checkout
https://github.com/openfoodfoundation/openfoodnetwork/issues/4233
2019-09-06 19:05:59 +10:00
Pau Perez
410e23085e Remove integrity check for deleted variants in OCs
We have no way to see the output of this weird RSpec integrity check
thus, it's pointless. It only adds unnecessary load the server.

However, the issue it checks seems to still be happening although
not very often. UK's server has 70 occurrences the last one being from
early 2019 while FR's server returns 10.
2019-09-06 10:30:26 +02:00
Pau Perez
e2b3ee7b3f Remove Guard and Guard-related gems
Guard and the other Guard-related gems should be removed from our
Gemfile. We think is not worth the extra dependencies given the effort
it requires to keep them up-to-date.

This came up in a PR that was upgrading Guard: #4213.
2019-09-06 10:11:17 +02:00
Maikel Linke
242767dc73 Give variables meaningful names in checkout spec 2019-09-06 12:27:15 +10:00
Maikel Linke
8e8c77c5bd Convert specs to RSpec 3.8.0 syntax with Transpec
This conversion is done by Transpec 3.4.0 with the following command:
    transpec spec/features/consumer/shopping/checkout_spec.rb

* 43 conversions
    from: obj.should
      to: expect(obj).to

* 8 conversions
    from: obj.should_not
      to: expect(obj).not_to

* 3 conversions
    from: == expected
      to: eq(expected)

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2019-09-06 11:32:44 +10:00
Luis Ramos
e3ce2a7486 Merge pull request #4104 from luisramos0/convert_taxons_to_ams
Convert spree/api/taxons views from rabl to AMS
2019-09-06 00:04:10 +01:00
dependabot-preview[bot]
8524f49589 Bump webmock from 3.7.1 to 3.7.2
Bumps [webmock](https://github.com/bblimke/webmock) from 3.7.1 to 3.7.2.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.7.1...v3.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-05 19:17:24 +00:00
dependabot-preview[bot]
36f9cd9cbf Bump ddtrace from 0.26.0 to 0.27.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.26.0 to 0.27.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.26.0...v0.27.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-05 19:16:35 +00:00
dependabot-preview[bot]
0fab4a3a8e Bump bugsnag from 6.12.0 to 6.12.1
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.12.0 to 6.12.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.12.0...v6.12.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-05 19:15:41 +00:00
Luis Ramos
722884d8d8 Merge pull request #3895 from luisramos0/fees_based_on_final_weight
Make weight calculator use line_item.final_weight_volume rather than variant.weight
2019-09-05 19:24:56 +01:00
Pau Pérez Fabregat
23740ef908 Merge pull request #4227 from openfoodfoundation/2.4.0-minus-pr-4204
Revert PR #4204
2019-09-05 17:19:15 +02:00
Pau Pérez Fabregat
ba04208999 Merge pull request #4224 from kristinalim/feature/4210-fetch_and_scope_variants_once_in_products_renderer
4210 Fetch and scope variants for shop in ProductsRenderer only once
2019-09-05 17:12:31 +02:00
Kristina Lim
590ce67f38 Fetch and scope variants for shop in ProductsRenderer only once 2019-09-05 22:42:50 +08:00
Matt-Yorkley
e11ea929c3 Merge pull request #4223 from Matt-Yorkley/integrity
Lower integrity checker job interval
2019-09-05 15:36:12 +01:00
Hugo Daniel
f88d54b862 Add missing translations for orders 2019-09-05 15:13:10 +02:00
Matt-Yorkley
fc9f61ecf8 Revert PR #4204
Temporarily reverting these changes for a quick release
2019-09-05 13:23:59 +01:00
Matt-Yorkley
6d283ac839 Lower integrity checker job interval from hourly to daily 2019-09-05 12:54:37 +01:00
Luis Ramos
725807f66d Merge pull request #4155 from coopdevs/fix-styling-in-stripe-tests
Fix Rubocop violations in Stripe connect tests
2019-09-03 15:58:34 +01:00
Pau Pérez Fabregat
149df6569c Merge pull request #4212 from openfoodfoundation/dependabot/bundler/webmock-3.7.1
Bump webmock from 3.6.2 to 3.7.1
2019-09-03 11:16:01 +02:00
Pau Pérez Fabregat
7daa7032aa Merge pull request #4215 from openfoodfoundation/transifex
Transifex
2019-09-03 11:11:51 +02:00
Pau Pérez Fabregat
8b7119beea Merge pull request #4200 from openfoodfoundation/dependabot/bundler/bugsnag-6.12.0
Bump bugsnag from 6.11.1 to 6.12.0
2019-09-03 11:02:51 +02:00
Transifex-Openfoodnetwork
201e87bf12 Updating translations for config/locales/en_US.yml 2019-09-03 12:29:10 +10:00
Transifex-Openfoodnetwork
0fffd6b4e3 Updating translations for config/locales/en_US.yml 2019-09-03 12:26:02 +10:00
Matt-Yorkley
c516d40d4a Update all locales with the latest Transifex translations 2019-09-02 22:24:53 +01:00
Luis Ramos
07d4528276 Merge pull request #4174 from openfoodfoundation/dependabot/bundler/delayed_job_active_record-4.1.4
Bump delayed_job_active_record from 4.1.3 to 4.1.4
2019-09-02 22:24:04 +01:00
Luis Ramos
4ace780431 Merge pull request #4187 from openfoodfoundation/dependabot/bundler/knapsack-1.18.0
Bump knapsack from 1.17.2 to 1.18.0
2019-09-02 22:23:15 +01:00
dependabot-preview[bot]
b69c3fd826 Bump webmock from 3.6.2 to 3.7.1
Bumps [webmock](https://github.com/bblimke/webmock) from 3.6.2 to 3.7.1.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.6.2...v3.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-02 19:23:28 +00:00
dependabot-preview[bot]
51df8de64f Bump knapsack from 1.17.2 to 1.18.0
Bumps [knapsack](https://github.com/ArturT/knapsack) from 1.17.2 to 1.18.0.
- [Release notes](https://github.com/ArturT/knapsack/releases)
- [Changelog](https://github.com/ArturT/knapsack/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ArturT/knapsack/compare/v1.17.2...v1.18.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-02 16:16:32 +00:00
Matt-Yorkley
d4a5829858 Merge pull request #4081 from Matt-Yorkley/products_pagination
Bulk Edit Products pagination
2019-09-02 17:14:14 +01:00
Matt-Yorkley
ff5fe66994 Fix route after big API refactor merge resolution 2019-09-02 16:29:03 +01:00
Matt-Yorkley
37e50a68e4 Fix timezone date parsing from Angular form fields 2019-09-02 16:29:00 +01:00
Matt-Yorkley
a72c662b97 Update per_page dropdown UX 2019-09-02 14:35:00 +01:00
Matt-Yorkley
ff2db0c5f8 Update spec routes, namespacing, and test content
Resolving new issues after a big merge
2019-09-02 14:35:00 +01:00
Matt-Yorkley
e9c60a33b9 Hide search in dropdown for per_page options 2019-09-02 14:35:00 +01:00
Matt-Yorkley
8e059d3c69 Define a limit on paginated queries with no supplied value for per_page 2019-09-02 14:35:00 +01:00
Matt-Yorkley
806ba94a2e Clarify dependency on kaminari gem 2019-09-02 14:35:00 +01:00
Matt-Yorkley
4bec583bff Refactor import_date_scope 2019-09-02 14:35:00 +01:00
Matt-Yorkley
90256f9c28 Add defaults and pages tests 2019-09-02 14:35:00 +01:00
Matt-Yorkley
eb284c1742 Use constants for defaults 2019-09-02 14:35:00 +01:00
Matt-Yorkley
b614e17f48 Add test coverage for #bulk_products endpoint and test all filtering functions 2019-09-02 14:34:54 +01:00
Pau Perez
1a450733a3 Use ApiHelper to DRY calls to JSON.parse in spec 2019-09-02 15:32:56 +02:00
Pau Perez
ffde7a38df Add spacing to increase readability 2019-09-02 15:32:56 +02:00
Pau Perez
8b4b0621db Fix Rubocop violations in Stripe connect tests 2019-09-02 15:32:56 +02:00
Matt-Yorkley
5259eaae5f Merge pull request #4204 from Matt-Yorkley/cartastrophe
Cartastrophe averted :)
2019-09-02 12:26:08 +01:00
Matt-Yorkley
b0ad0fccfa Add some defaults to avoid returning zero values when not supplied in query 2019-09-02 12:00:32 +01:00
Matt-Yorkley
2a83ad8689 Improve UX and consistency in orders pagination and page changing 2019-09-02 11:59:13 +01:00
Matt-Yorkley
c127110192 Make import_date query modification conditional 2019-09-02 11:59:13 +01:00
Matt-Yorkley
0470725112 Refactor pagination data hash 2019-09-02 11:57:32 +01:00
Matt-Yorkley
0623bab084 Don't respond to a successful update by querying 500 arbitrary products 2019-09-02 11:56:00 +01:00
Matt-Yorkley
4a0df684c7 Adjust specs 2019-09-02 11:56:00 +01:00
Matt-Yorkley
7dccb5ba90 Changing per_page should also reset the query 2019-09-02 11:56:00 +01:00
Matt-Yorkley
5a4be24df0 Add "filter results" button 2019-09-02 11:56:00 +01:00
Matt-Yorkley
5cb5967977 Fix cleared filters submitting "0" as value in queries 2019-09-02 11:56:00 +01:00
Matt-Yorkley
aeb8d30dae Fix server-side import_date filtering 2019-09-02 11:56:00 +01:00
Matt-Yorkley
1822fd97a6 Tidy up filters 2019-09-02 11:54:28 +01:00
Matt-Yorkley
4ff3e9fe10 Update Angular loading conditionals 2019-09-02 11:54:28 +01:00
Matt-Yorkley
a63994440d Add pagination to UI 2019-09-02 11:54:28 +01:00
Matt-Yorkley
f6d0de1454 Improve pagination data in bulk products 2019-09-02 11:54:28 +01:00
Matt-Yorkley
9b0e27a9d1 Add new ProductResource 2019-09-02 11:46:42 +01:00
Matt-Yorkley
415d88f302 Fix indentation in bulk product controller 2019-09-02 11:46:42 +01:00
Pau Pérez Fabregat
f9c98ea9a1 Merge pull request #4199 from openfoodfoundation/transifex
Transifex
2019-09-02 12:33:12 +02:00
Pau Pérez Fabregat
369a5a8a2f Merge pull request #4101 from luisramos0/remove_variants_rabl
Convert spree/api/products and spree/api/variants views from rabl to AMS
2019-09-02 12:14:26 +02:00
Matt-Yorkley
62341c6381 Unit test access to associated objects after soft-delete 2019-08-31 10:06:47 +01:00
Luis Ramos
fa1becb791 Merge pull request #4063 from luisramos0/dead_code
Remove dead code under views/spree/shared
2019-08-30 22:39:01 +01:00
Matt-Yorkley
50a1704994 Make prices soft-deletable 2019-08-30 20:11:32 +01:00
Matt-Yorkley
302538c370 Add failing spec for cart issue 2019-08-30 15:32:45 +01:00
Maikel
0f80b6ce12 Merge pull request #4197 from kristinalim/fix/4195-fix_invalid_date_in_firefox
4195 Specify API date format when converting date to string in JS
2019-08-30 08:36:17 +10:00
dependabot-preview[bot]
69fb8b2afe Bump bugsnag from 6.11.1 to 6.12.0
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.11.1 to 6.12.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.11.1...v6.12.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-29 19:17:20 +00:00
Transifex-Openfoodnetwork
1df8fc903e Updating translations for config/locales/en_ZA.yml 2019-08-30 04:22:54 +10:00
Transifex-Openfoodnetwork
9a2dcb89af Updating translations for config/locales/en_ZA.yml 2019-08-30 04:22:46 +10:00
Transifex-Openfoodnetwork
1661591f6c Updating translations for config/locales/ca.yml 2019-08-29 23:12:46 +10:00
Transifex-Openfoodnetwork
6dde720039 Updating translations for config/locales/es.yml 2019-08-29 23:10:30 +10:00
Transifex-Openfoodnetwork
a54b725d6d Updating translations for config/locales/ca.yml 2019-08-29 23:09:39 +10:00
Luis Ramos
265e76e8ca Merge pull request #4074 from HugsDaniel/defacepocalypse
[Defacepocalypse] De-deface product properties index
2019-08-28 22:18:18 +01:00
luisramos0
192bff4fed Move taxons and taxonomies api routes to api out of spree routes 2019-08-28 22:06:56 +01:00
luisramos0
92a270165e Add missing api taxonomies controller only for the required jstree action 2019-08-28 22:06:56 +01:00
luisramos0
9f5c9916ba Add back required api actions (create, update and destroy) and add AMS serializers for the jstree action 2019-08-28 22:06:56 +01:00
luisramos0
d08de4bdf9 Add extra fields to taxon serializer to be used in the api 2019-08-28 22:06:56 +01:00
luisramos0
45bdb85bf3 Add missing method and skip_authorization_check to taxons controller 2019-08-28 22:06:56 +01:00
luisramos0
ece0652ca3 Adapt spree/admin/shared/_routes.html.erb to new location of the api/taxons routes 2019-08-28 22:06:56 +01:00
luisramos0
7a652fd67b Adapt api/taxons controller to new namespace outside Spree: remove Spree module and add Spree namespace to Taxons and Taxonomy classes 2019-08-28 22:06:56 +01:00
luisramos0
4ca8feeef1 Move api/taxons route and controller out of spree namespace into /api and move the ctrl spec as well 2019-08-28 22:06:56 +01:00
luisramos0
367932a767 Make spree/api/taxons_controller use AMS serializer instead of rabl 2019-08-28 22:06:56 +01:00
luisramos0
e591658f48 Keep only used api/taxons index action, delete all others as not required right now 2019-08-28 22:06:56 +01:00
Kristina Lim
1516069888 Specify API date format when converting date to string in JS 2019-08-29 02:44:14 +08:00
Luis Ramos
cd263b761c Merge pull request #4055 from luisramos0/remove_spree_api
Remove dependency to spree_api - step 1 - controllers and routes
2019-08-28 15:34:08 +01:00
Maikel
c952ad16ad Merge pull request #4163 from luisramos0/swagger
Add swagger.yaml to codebase
2019-08-28 14:46:51 +10:00
Maikel
ca09c58f26 Merge pull request #3985 from jonleighton/string-to-text
Convert several fields from string to text
2019-08-28 11:53:49 +10:00
Maikel Linke
e876a25d59 Fix flaky proxy order spec 2019-08-28 10:48:57 +10:00
Maikel Linke
2a780151be Update all locales with the latest Transifex translations 2019-08-28 09:54:31 +10:00
Maikel
9d2009d2af Merge pull request #4188 from openfoodfoundation/transifex
Transifex
2019-08-28 09:43:02 +10:00
Maikel
f887533dda Merge pull request #4157 from mkllnk/4138-update-products
4138 Avoid infinite loop when updating products
2019-08-28 09:42:28 +10:00
Transifex-Openfoodnetwork
bef3f154d6 Updating translations for config/locales/fr_CA.yml 2019-08-28 09:12:59 +10:00
Transifex-Openfoodnetwork
6fb775d5ed Updating translations for config/locales/en_CA.yml 2019-08-28 09:05:39 +10:00
Transifex-Openfoodnetwork
b5a8563725 Updating translations for config/locales/en_GB.yml 2019-08-27 23:28:34 +10:00
Transifex-Openfoodnetwork
1a9ade6de9 Updating translations for config/locales/en_GB.yml 2019-08-27 23:25:26 +10:00
Maikel Linke
48df853ff5 Skip cascading callbacks when touching distributors 2019-08-27 10:44:19 +10:00
Maikel Linke
2137a2addb Add spec for current bug
https://github.com/openfoodfoundation/openfoodnetwork/issues/4138
2019-08-27 10:44:19 +10:00
Transifex-Openfoodnetwork
e6a7239716 Updating translations for config/locales/en_AU.yml 2019-08-27 10:09:05 +10:00
Transifex-Openfoodnetwork
25bed92f2e Updating translations for config/locales/en_AU.yml 2019-08-27 10:08:32 +10:00
Maikel
909cd407dd Merge pull request #4149 from openfoodfoundation/transifex
Transifex
2019-08-27 09:58:31 +10:00
Luis Ramos
f2d25748b1 Merge pull request #4078 from HugsDaniel/defacepocalypse-variants
[Defacepocalypse] De-deface variants
2019-08-25 22:51:15 +01:00
Luis Ramos
6396e6e970 Merge pull request #4152 from openfoodfoundation/dependabot/bundler/stripe-4.24.0
Bump stripe from 4.19.0 to 4.24.0
2019-08-25 22:49:47 +01:00
Luis Ramos
e52f813dae Merge pull request #4159 from luisramos0/fix_prod_set
Add bugsnag notifications to both product_set and products_controller when stock update fails
2019-08-25 22:49:06 +01:00
Luis Ramos
9ab2eec30c Merge pull request #4185 from kristinalim/fix/4176-fix_saving_of_shipping_method
4176 Fix saving of shipping method when automatically advancing subscription order state
2019-08-25 22:48:39 +01:00
Luis Ramos
f96b37dae3 Merge pull request #4162 from luisramos0/checkout_cache
Checkout is not refreshing products cache
2019-08-25 21:52:55 +01:00
Kristina Lim
5b68b2f707 Fix ship method when advancing subscription order 2019-08-22 21:32:41 +08:00
Kristina Lim
ff634bd870 Test ship method when advancing subscription order 2019-08-22 21:30:21 +08:00
Hugo Daniel
7d21d88dc9 Force hide the select2 close cross 2019-08-22 10:32:07 +02:00
dependabot-preview[bot]
31b62d6296 Bump delayed_job_active_record from 4.1.3 to 4.1.4
Bumps [delayed_job_active_record](https://github.com/collectiveidea/delayed_job_active_record) from 4.1.3 to 4.1.4.
- [Release notes](https://github.com/collectiveidea/delayed_job_active_record/releases)
- [Commits](https://github.com/collectiveidea/delayed_job_active_record/compare/v4.1.3...v4.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-20 19:14:59 +00:00
Transifex-Openfoodnetwork
5e68604f11 Updating translations for config/locales/nb.yml 2019-08-20 17:42:09 +10:00
Transifex-Openfoodnetwork
c4edd3a683 Updating translations for config/locales/fr.yml 2019-08-20 17:41:25 +10:00
Transifex-Openfoodnetwork
574781e901 Updating translations for config/locales/nb.yml 2019-08-20 17:39:01 +10:00
Transifex-Openfoodnetwork
8ea4f933da Updating translations for config/locales/fr.yml 2019-08-20 17:38:12 +10:00
Transifex-Openfoodnetwork
1e9820f291 Updating translations for config/locales/fr.yml 2019-08-20 17:35:05 +10:00
Luis Ramos
34ed86cf2d Merge pull request #4132 from Matt-Yorkley/import_launch
Product Import beta
2019-08-19 17:17:16 +01:00
luisramos0
8a4e5b445f Delete unused frontend auth toekn script override and move the backend one to the head partial 2019-08-18 21:53:56 +01:00
luisramos0
2394eda2ac Remove unused sidebar override 2019-08-18 21:47:21 +01:00
luisramos0
f97a3a030a Remove unused nav_bar sessions route and override 2019-08-18 21:44:22 +01:00
luisramos0
ec645f8fa8 Remove unused login override of nav_bar 2019-08-18 21:43:18 +01:00
luisramos0
56a54db602 Remove admin login_nav override and move it to admin layout file 2019-08-18 21:39:19 +01:00
luisramos0
4c3d15b42b Remove users menu entry override and file and add it directly to the tabs view together with all the other entries 2019-08-18 21:36:50 +01:00
luisramos0
5f4429646d Move override to the view that is now in our code base (from spree_auth_devise originally) 2019-08-18 21:33:23 +01:00
luisramos0
f37db456f8 Delete dead overrides of spree frontend code 2019-08-18 21:32:53 +01:00
Kevin Christianson
2dfcedad56 Add swagger.yaml 2019-08-18 18:26:44 +01:00
Kristina Lim
706168f2f0 Refresh variant cache when changing stock movements 2019-08-18 16:22:12 +08:00
Kristina Lim
3ecb5c0c75 Flush background jobs in failing spec 2019-08-18 18:16:28 +10:00
luisramos0
249a3c4e18 Make product set raise error and inform the user something went wrong and keep bugsnag notification so we can get more information about what's going on 2019-08-17 19:19:46 +01:00
luisramos0
2b8ebba233 Fix some rubocop issues in product_set and admin/products_controller 2019-08-17 19:15:32 +01:00
luisramos0
758394464b Add bugsnag notification to products_controller create and update when on_hand or on_demand update fails with exception 2019-08-17 19:15:32 +01:00
luisramos0
d3c624ae10 Add bugsnag notification to product_set create_variant when on_hand or on_demand update fails with exception 2019-08-17 19:15:31 +01:00
luisramos0
163c65849e Make product set a bit more robust by not failing to update on_hand when variant is not valid. This will make the overall set update work 2019-08-17 19:14:25 +01:00
luisramos0
99ff714913 Enable cache on checkout spec to test cache after checkout 2019-08-16 20:17:14 +01:00
luisramos0
c2f302450f Add spec to checkout to validate product is removed from shopfront just after all available quantity is checked out 2019-08-16 19:35:57 +01:00
luisramos0
9186bcd455 Dry out some code in checkout_spec 2019-08-16 19:35:08 +01:00
Transifex-Openfoodnetwork
3d074b530f Updating translations for config/locales/nb.yml 2019-08-15 19:16:43 +10:00
Transifex-Openfoodnetwork
20783db373 Updating translations for config/locales/en_GB.yml 2019-08-15 19:14:53 +10:00
Luis Ramos
d5b37a5171 Merge pull request #4079 from HugsDaniel/defacepocalypse-payments
[Defacepocalypse] De-deface payments
2019-08-14 19:30:33 +01:00
luisramos0
b9ddb39edc Re-add taxons jstree action to make taxonomies config page work again 2019-08-14 16:31:34 +01:00
Luis Ramos
3efe2f878d Merge pull request #4156 from coopdevs/fix-styling-in-paypal-tests
Fix Rubocop violations in PayPal tests
2019-08-14 15:59:14 +01:00
Luis Ramos
064fee79b3 Merge pull request #4151 from Matt-Yorkley/datadog_apm
Enable (optional) APM with Datadog
2019-08-14 15:58:48 +01:00
Luis Ramos
d13f182801 Merge pull request #4154 from Matt-Yorkley/fix_deployments2
Adjust user creation syntax
2019-08-14 15:56:32 +01:00
Luis Ramos
ee34935223 Fix a typo in docker.md 2019-08-14 13:55:58 +01:00
Pau Perez
0b7ce0d6db Fix Rubocop violations in PayPal tests 2019-08-14 13:33:53 +02:00
Matt-Yorkley
9dd02044a5 Fix "can't modify frozen string" error in validation callbacks 2019-08-14 10:24:30 +01:00
Matt-Yorkley
d8a7190f43 Adjust user creation syntax
#skip_confirmation! can't be chained...
2019-08-14 09:22:11 +01:00
Matt-Yorkley
e5e0fcc887 Enable DelayedJob APM 2019-08-14 08:20:47 +01:00
Pau Pérez Fabregat
53496ff9eb Merge branch 'master' into transifex 2019-08-14 09:08:40 +02:00
Pau Pérez Fabregat
6635a89af7 Merge pull request #4153 from Matt-Yorkley/fix_deployments
Fix deployments
2019-08-14 08:59:23 +02:00
Transifex-Openfoodnetwork
c1248857b8 Updating translations for config/locales/en_CA.yml 2019-08-14 09:15:20 +10:00
Matt-Yorkley
8c95399292 Don't prompt if admin user already exists 2019-08-13 21:02:12 +01:00
Matt-Yorkley
14c1abb861 Skip confirmation email on initial admin user creation 2019-08-13 21:00:30 +01:00
dependabot-preview[bot]
e2d61f5e89 Bump stripe from 4.19.0 to 4.24.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 4.19.0 to 4.24.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/v4.19.0...v4.24.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-13 19:18:17 +00:00
Transifex-Openfoodnetwork
5a1ef04c67 Updating translations for config/locales/en_ZA.yml 2019-08-14 04:57:27 +10:00
Transifex-Openfoodnetwork
e9e73ef0e4 Updating translations for config/locales/en_ZA.yml 2019-08-14 04:43:50 +10:00
Matt-Yorkley
be844253eb Enable (optional) Rails APM with Datadog 2019-08-13 18:57:49 +01:00
Transifex-Openfoodnetwork
001e3688da Updating translations for config/locales/en_GB.yml 2019-08-14 03:28:13 +10:00
luisramos0
b4ffd4dcc2 Update all locales with the latest Transifex translations 2019-08-13 18:25:23 +01:00
Transifex-Openfoodnetwork
e5a9606449 Updating translations for config/locales/en_GB.yml 2019-08-14 03:25:02 +10:00
Pau Pérez Fabregat
9eabbb8dab Merge pull request #4140 from openfoodfoundation/transifex
Transifex
2019-08-13 12:00:48 +02:00
Hugo Daniel
1217811402 Refactor and remove empty lines 2019-08-13 11:03:04 +02:00
Pau Pérez Fabregat
d4f2fcb98a Merge pull request #4126 from Matt-Yorkley/cart_dropdown
Cart dropdown now closes when clicking outside it.
2019-08-13 10:57:56 +02:00
Matt-Yorkley
0b2417849c Merge pull request #4142 from mkllnk/seed-user
Seed user
2019-08-13 08:42:07 +01:00
Matt-Yorkley
3e8369c8f5 Merge pull request #4123 from Matt-Yorkley/navigation-css
Navigation css
2019-08-13 08:41:47 +01:00
Maikel Linke
cbaedcec92 Fix seeding of default user without asking 2019-08-13 09:47:54 +10:00
Hugo Daniel
bf2c1a0c1d Add ng directive for setting on demand 2019-08-09 14:42:39 +02:00
Matt-Yorkley
0284eebf35 Fix cart dropdown positioning 2019-08-09 11:50:33 +01:00
Maikel Linke
e4ba515109 Seed admin user without asking by default 2019-08-09 14:16:01 +10:00
Maikel Linke
af1f6f6c6d Skip confirmation when creating first admin user 2019-08-09 14:16:01 +10:00
Maikel Linke
b0e8ee42c1 Restore spree_auth_devise user seeding 2019-08-09 13:48:50 +10:00
Maikel
86aeb6a3c7 Merge pull request #4135 from coopdevs/remove-bugherd-tests
Remove bugherd specs
2019-08-09 12:53:23 +10:00
Matt-Yorkley
5d83414e9b Disable rubocop for spree tabs helper 2019-08-08 20:09:35 +01:00
Transifex-Openfoodnetwork
9820d7de38 Updating translations for config/locales/ca.yml 2019-08-09 02:36:02 +10:00
Pau Pérez Fabregat
910eca810a Merge pull request #4124 from Matt-Yorkley/order_email
Add SKU to order confirmation email
2019-08-08 18:35:20 +02:00
Transifex-Openfoodnetwork
6feaddf747 Updating translations for config/locales/es.yml 2019-08-09 02:33:35 +10:00
Transifex-Openfoodnetwork
10f6fb91f6 Updating translations for config/locales/ca.yml 2019-08-09 02:32:54 +10:00
Pau Pérez Fabregat
c7bd4b94b8 Merge pull request #4137 from openfoodfoundation/transifex
Transifex
2019-08-08 18:31:47 +02:00
Transifex-Openfoodnetwork
dd223a21f2 Updating translations for config/locales/nb.yml 2019-08-08 20:58:24 +10:00
Transifex-Openfoodnetwork
549366ff15 Updating translations for config/locales/fr.yml 2019-08-08 20:52:28 +10:00
Transifex-Openfoodnetwork
e92f60fb1c Updating translations for config/locales/fr.yml 2019-08-08 20:49:20 +10:00
Pau Pérez Fabregat
92b05c76a3 Merge pull request #4068 from luisramos0/replace_oc_rabl
Convert order_cycle.rabl to Api::OrderCycleSerializer
2019-08-08 12:23:09 +02:00
Hugo Daniel
fa6fa0be64 Add missing translation 2019-08-08 11:11:32 +02:00
Kristina Lim
752efac7cf Merge pull request #4051 from luisramos0/subs_unpause
Sync subscription (create/update orders) when subscription is unpaused
2019-08-08 01:09:09 +08:00
Pau Perez
2b1f1f748b Remove bugherd specs
I don't think these are worth the time it takes to execute them every
time but most importantly I believe we are not using Bugherd anymore.
2019-08-07 16:49:32 +02:00
Pau Pérez Fabregat
798cd9e778 Merge pull request #4114 from kristinalim/fix/4103-add_specs
4103 Add specs for referencing of shipments to deleted variants
2019-08-07 12:52:11 +02:00
Matt-Yorkley
2f5b0a5afb Remove product import FeatureFlag 2019-08-07 09:59:55 +01:00
Maikel
de2d4a5870 Merge pull request #4125 from Matt-Yorkley/variant_overrides
Variant overrides with on_demand
2019-08-07 10:25:32 +10:00
Matt-Yorkley
b3728568a8 Enable product import for non-superadmin users
This class_eval hack for premissions on the #tab method was really hard to find, and is obviously quite ugly, but refactoring it is maybe outside of the scope here...
2019-08-06 18:59:12 +01:00
Matt-Yorkley
6ba98b4b2c Add beta notice to Product Import 2019-08-06 17:02:38 +01:00
Matt-Yorkley
d3d6921a0f Use light grey colour with transparency. 2019-08-06 08:23:38 +01:00
Maikel
68393f1444 Merge pull request #4037 from luisramos0/subs_stock
Subscriptions - When editing subscriptions, check stock levels when changing orders in current OC
2019-08-06 15:16:00 +10:00
Maikel
229e6fa0a3 Merge pull request #4073 from luisramos0/kill_more_rabl
Replace update_prod_image.rabl with ImageSerializer in api/product_image_controller
2019-08-06 15:00:33 +10:00
Matt-Yorkley
8a069787d1 Cart dropdown now closes when clicking outside it. 2019-08-05 21:48:37 +01:00
Matt-Yorkley
29ed38a6cc Add unit tests for overriding #move 2019-08-05 17:01:56 +01:00
Matt-Yorkley
4c7d3a491a Don't decrement variant stock if override is on_demand 2019-08-05 17:01:56 +01:00
Matt-Yorkley
b0f90cf43c Add test for variant override with :on_demand 2019-08-05 17:01:54 +01:00
Pau Pérez Fabregat
02ec0634b3 Merge pull request #4120 from openfoodfoundation/dependabot/bundler/webmock-3.6.2
Bump webmock from 3.6.0 to 3.6.2
2019-08-05 15:13:31 +02:00
Pau Pérez Fabregat
64d21969f0 Merge pull request #4064 from luisramos0/convert_search_Rabl
Replace views/admin/variants/search.rabl with Api::Admin::VariantSerializer
2019-08-05 15:07:10 +02:00
Pau Pérez Fabregat
0995adeb59 Merge pull request #4085 from openfoodfoundation/dependabot/bundler/devise-encryptable-0.2.0
Bump devise-encryptable from 0.1.2 to 0.2.0
2019-08-05 15:01:46 +02:00
Pau Pérez Fabregat
073a3fe2b4 Merge pull request #4119 from openfoodfoundation/transifex
Transifex
2019-08-05 13:18:12 +02:00
Matt-Yorkley
c07df6a5a6 Fix table column alignments 2019-08-04 20:45:00 +01:00
Matt-Yorkley
a7d109833d Add SKU to order confirmation email 2019-08-04 20:43:55 +01:00
Matt-Yorkley
0364a14073 Add navigation bottom border on mobile view 2019-08-04 16:56:43 +01:00
Matt-Yorkley
ddc8d33356 Update border colour on navigation bar 2019-08-04 16:56:03 +01:00
luisramos0
006c6e6b7b Add comment to explain method in weight calculator 2019-08-02 21:02:33 +01:00
luisramos0
41aa4ff479 Improve code readability and fix rubocop complexity issue in weight calculator 2019-08-02 20:54:41 +01:00
luisramos0
0e8f167ab9 Fix spec in weight calculator tests 2019-08-02 20:44:11 +01:00
Kristina Lim
cd81dfaead Move deleted variant to let block in feature spec 2019-08-02 21:52:36 +08:00
Kristina Lim
25073ada84 Move order to a let block in feature spec 2019-08-02 21:52:33 +08:00
Kristina Lim
15b6f9dd5e Add specs testing edit order page still okay when variant deleted
Note that the wrapping example group also loads the edit order page
before this "before" block. This will be fixed in the next commit.
2019-08-02 21:45:39 +08:00
Kristina Lim
0377e02dc1 Add specs testing that shipments see deleted variants 2019-08-02 21:45:38 +08:00
dependabot-preview[bot]
f679708a4e Bump webmock from 3.6.0 to 3.6.2
Bumps [webmock](https://github.com/bblimke/webmock) from 3.6.0 to 3.6.2.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.6.0...v3.6.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-08-01 19:15:26 +00:00
Transifex-Openfoodnetwork
0f748a3333 Updating translations for config/locales/en_GB.yml 2019-08-02 04:32:50 +10:00
Transifex-Openfoodnetwork
bdedaa06d8 Updating translations for config/locales/en_GB.yml 2019-08-02 04:29:40 +10:00
Pau Pérez Fabregat
6a41d9be87 Merge pull request #4092 from coopdevs/remove-admin-products-N+1
Remove N+1 while fetching distributors of OCs
2019-08-01 19:50:49 +02:00
luisramos0
4aa6c673ff Adapt api products and variants controllers to new namespace outside of Spree 2019-08-01 18:34:19 +01:00
luisramos0
aa3c1aa0fe Remove Spree module declaration from these files as they were moved out of the spree namespace 2019-08-01 14:30:11 +01:00
luisramos0
31bac9641f Move api products and variants routes and ctrl out of spree namespace 2019-08-01 14:28:55 +01:00
Pau Perez
3616a27566 Update all locales with the latest Transifex translations 2019-08-01 15:07:09 +02:00
Hugo Daniel
60bdde6349 Convert variants/new from erb to haml and import new.js.erb 2019-08-01 11:23:44 +02:00
Hugo Daniel
5faf33fabe Import variants/new.html.erb from spree_backend 2019-08-01 10:50:13 +02:00
Hugo Daniel
f3b1a5dd35 Convert variants/edit from erb to haml 2019-08-01 10:45:04 +02:00
Matt-Yorkley
5ae61017f5 Merge pull request #4091 from Matt-Yorkley/missing_css
Move CSS rule to SCSS and remove broken css file reference
2019-07-31 23:48:52 +01:00
Luis Ramos
61dffb8821 Merge pull request #4093 from openfoodfoundation/dependabot/bundler/redcarpet-3.5.0
Bump redcarpet from 3.4.0 to 3.5.0
2019-07-31 20:53:43 +01:00
Hugo Daniel
07ccbf7f98 Import variants/edit.html.erb from spree_backend 2019-07-31 16:55:47 +02:00
Luis Ramos
f9fabd088c Merge pull request #4075 from HugsDaniel/defacepocalypse-payment-methods
[Defacepocalypse] De-deface payment methods index
2019-07-31 15:49:48 +01:00
Hugo Daniel
a3af6617a9 Convert payments/show from erb to haml 2019-07-31 16:20:32 +02:00
Hugo Daniel
9f7fb654c8 Import payments/show.html.erb from spree_backend 2019-07-31 16:16:26 +02:00
Hugo Daniel
b4a6686eac Convert payments/_list from erb to haml 2019-07-31 16:15:38 +02:00
Hugo Daniel
ac13ff114c Import payments/_list.html.erb from spree_backend 2019-07-31 16:09:48 +02:00
Hugo Daniel
af9187947f Convert erb to haml 2019-07-31 16:02:48 +02:00
luisramos0
b7f7038934 Remove api/enterprises rabl template, it was only used as a member in the now removed rabl variants/products templates 2019-07-31 14:36:36 +01:00
Hugo Daniel
f0fdbf7cf4 Import payments/index from spree_backend 2019-07-31 14:33:38 +02:00
Hugo Daniel
74ab31c0e6 Import gateway.html.erb and convert to haml 2019-07-31 14:28:15 +02:00
luisramos0
6c054e6078 Add bulk_products and overridable to skip_authorization_check so these endpoints work with AMS 2019-07-31 12:18:27 +01:00
luisramos0
18974c68e1 Remove orphan price check from price model
This is a quick fix. This check is breaking product deletion in some situations and orphan Prices are not really a problem in the DB
2019-07-31 11:24:55 +01:00
luisramos0
78ab852141 Make spree/api/products_controller work with AMS 2019-07-31 11:23:43 +01:00
luisramos0
4497173213 Adapt spree/api/products_controller_spec to AMS serializer 2019-07-31 11:23:18 +01:00
luisramos0
4d74d246e8 Remove spree/api/products_controller index and new actions, not used 2019-07-31 10:32:45 +01:00
luisramos0
cc51537e93 Convert spree/api/products_controller from rabl to ams 2019-07-31 09:50:34 +01:00
luisramos0
07aececdcf Remove unused route api/products managed 2019-07-31 09:50:31 +01:00
luisramos0
c3fbf9cdf9 Remove unused pagination from index and respective specs, fix spec for search by sku by adding sku to the serializer and adapt a few specs to pass with AMS attrivbutes, 2019-07-31 09:40:19 +01:00
luisramos0
180598c603 Convert spree/api/variants_controller to AMS by changing base_controller, using render json instad of respond with, deleting rabl templates and adapting specs
Delete unused pagination spec
2019-07-31 09:40:19 +01:00
luisramos0
69a5527e24 Update/regenarate .rubocop_todo.yml 2019-07-31 09:36:48 +01:00
luisramos0
e4a6b3880f Fix some more simple rubocop issues 2019-07-31 09:36:48 +01:00
luisramos0
96ce4deb45 Transpec spec/support/api_helper.rb 2019-07-31 09:36:48 +01:00
luisramos0
a3c179bd3f Fix some more simple rubocop issues 2019-07-31 09:36:48 +01:00
luisramos0
a57504ba1f Bring api_helper.image from spree_api to support spree/api/products_controller_spec 2019-07-31 09:36:48 +01:00
luisramos0
25451eed6b Bring api spec helpers from spree_api into ofn/api_helper 2019-07-31 09:36:48 +01:00
luisramos0
50765563f8 Bring spree/api_helpers from spree_api 2019-07-31 09:35:46 +01:00
luisramos0
2ae75ce13e Add ControllerSetup from spree_api as it is used in spree/api/base_controller 2019-07-31 09:35:46 +01:00
luisramos0
18aa16650d Remove dependency to Spree::ApiConfiguration, overall requires_authentication? is true, exceptions will be endpoint specific 2019-07-31 09:35:46 +01:00
luisramos0
314ed50e0f Fix a rubocop issue in spree/api/products_controller 2019-07-31 09:34:20 +01:00
luisramos0
7346a49982 Move routes in ofn api namespace to separate routes file 2019-07-31 09:34:20 +01:00
luisramos0
5182286218 Add necessary spree api routes related to api keys for users and bring respective implementations from spree_api 2019-07-31 09:34:20 +01:00
luisramos0
a267848394 Remove unused api routes from views/spree/admin/shared/routes view 2019-07-31 09:32:33 +01:00
luisramos0
104bd31f9b Add necessary spree api routes: taxons, variants and shipments 2019-07-31 09:32:33 +01:00
luisramos0
8bc9985edb Transpec and fix rubocop issues in spree/api/variants_controller_spec 2019-07-31 09:32:33 +01:00
luisramos0
6dfc927730 Make spree/api/variant_controllers_spec pass 2019-07-31 09:32:33 +01:00
luisramos0
3771e26eba Bring tests from spree/api/variants_controller_spec from spree_api 2019-07-31 09:32:33 +01:00
luisramos0
fd21d35aee Transpec and fix rubocop issues in spree/api/shipments_controller_spec 2019-07-31 09:32:33 +01:00
luisramos0
1417b924d2 Bring and adapt tests from spree/api/shipments_controller_spec and mix them with exiting tests in OFN 2019-07-31 09:32:33 +01:00
luisramos0
2912c1b87d Transpec and fix rubocop issues in spree/api/product_controller_spec 2019-07-31 09:32:33 +01:00
luisramos0
e746a0db7d Bring tests from spree/api/products_controller_spec and add them to existing ones on the ofn side
Adapt these tests to have a green build
2019-07-31 09:32:33 +01:00
luisramos0
84a2886003 Improve auth code in spree/api/taxons_controller_spec 2019-07-31 09:32:33 +01:00
luisramos0
c668677b8a Bring spree/api/taxons_controller_spec from spree_api, adapt it, transpec it and fix rubocop issues 2019-07-31 09:32:33 +01:00
luisramos0
2490cbfccb Transpec and fix rubocop issues in spree/api/base_controller_spec 2019-07-31 09:32:33 +01:00
luisramos0
20a46a791c Bring and adapt spree/api/base_controller_spec from spree_api 2019-07-31 09:32:33 +01:00
luisramos0
0e4fe08ac4 Fix logical problem in spree/api/base_controller and in spree/checkout_controller
See this stack overflow post for more info: https://stackoverflow.com/questions/39629976/ruby-return-vs-and-return
2019-07-31 09:32:33 +01:00
luisramos0
cf0f716534 Fix easy rubocop issues in spree/api/taxons_controller 2019-07-31 09:32:33 +01:00
luisramos0
b70cfa5968 Bring spree/api/taxons controller from spree_api as it is needed in OFN admin 2019-07-31 09:32:33 +01:00
luisramos0
f77beb50ff Fix class scope in spree/api/products_controller, should not use Spree namespace here
Also, add missing dependency to spree/admin/products_controller_decorator
2019-07-31 09:32:33 +01:00
luisramos0
a941280982 Fix easy rubocop issues in spree/api/base_controller 2019-07-31 09:32:33 +01:00
luisramos0
9d40ee49e6 Bring spree/api/base_controller from spree_api 2019-07-31 09:32:33 +01:00
luisramos0
6abbdecb97 Fix the easy rubocop issues in the new spree api controllers 2019-07-31 09:32:33 +01:00
luisramos0
660ce92c27 Merge spree api controllers and its decorators 2019-07-31 09:32:33 +01:00
luisramos0
c5bcef6ae4 Delete unused spree/api/line_items_controller_decorator.rb 2019-07-31 09:32:33 +01:00
luisramos0
d26a0b6b73 Bring from spree_api the api controllers that are overriden in OFN so that we can merge the original and the override afterwards 2019-07-31 09:32:33 +01:00
luisramos0
9400516b56 Fix broken (was always green) bulk_product_update_spec updating image spec where the old src url was not stored and the expect command was wrong with != 2019-07-30 20:37:26 +01:00
luisramos0
6ebfb02d0e Update ImageSerializer with missing image size urls: mini/thumb_url, product/image_url that is used in the product image modal 2019-07-30 20:15:21 +01:00
Luis Ramos
75c7e0b939 Merge pull request #4089 from luisramos0/undeface-fix
Add doctype declaration in layouts/admin view
2019-07-30 19:29:17 +01:00
Luis Ramos
62eb2bba13 Merge pull request #4059 from luisramos0/kill_rabl
Convert 2 rabl templates to AMS and remove a few unused ones
2019-07-30 19:28:21 +01:00
Luis Ramos
3fa9e857a8 Merge pull request #4067 from luisramos0/oc_icon
Add icon to OC menu entry
2019-07-30 14:08:08 +01:00
luisramos0
11a77043eb Switch from Spree::Api::BaseController to Api::BaseController so that AMS is activated 2019-07-30 12:20:14 +01:00
luisramos0
58b43c7bc9 Remove update_product_image.v1.rabl and switch controller from respond_with to render json to switch from rabl to AMS 2019-07-30 12:19:42 +01:00
dependabot-preview[bot]
7da10db055 Bump redcarpet from 3.4.0 to 3.5.0
Bumps [redcarpet](https://github.com/vmg/redcarpet) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/vmg/redcarpet/releases)
- [Changelog](https://github.com/vmg/redcarpet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vmg/redcarpet/compare/v3.4.0...v3.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-29 19:16:07 +00:00
luisramos0
be41271038 Make spelling coherent, as we have serializers with Z we get rid of the few serialisers with S we have 2019-07-29 19:57:12 +01:00
luisramos0
04e13e1136 Change css styling from id to class to make rubocop happy. Keeping id name as it may be needed in spree autocomplete css or js code 2019-07-29 19:46:12 +01:00
luisramos0
8868b7eb12 Fix rubocop issue: use nested class/module definition 2019-07-29 19:05:39 +01:00
Pau Perez
c85d00fcb8 Remove N+1 while fetching distributors of OCs
What used to be done as

```sql
SELECT "order_cycles".* FROM "order_cycles"
WHERE (order_cycles.orders_open_at <= '2019-07-29 17:45:20.137294'
  AND order_cycles.orders_close_at >= '2019-07-29 17:45:20.137333')

SELECT DISTINCT "enterprises".* FROM "enterprises"
INNER JOIN "exchanges" ON "enterprises"."id" = "exchanges"."receiver_id"
WHERE "exchanges"."order_cycle_id" = 1
  AND "exchanges"."incoming" = 'f'
(...)
SELECT DISTINCT "enterprises".* FROM "enterprises"
INNER JOIN "exchanges" ON "enterprises"."id" = "exchanges"."receiver_id"
WHERE "exchanges"."order_cycle_id" = 4
  AND "exchanges"."incoming" = 'f'
```

it became

```sql
SELECT "order_cycles".* FROM "order_cycles"
WHERE (order_cycles.orders_open_at <= '2019-07-29 17:45:20.137294'
  AND order_cycles.orders_close_at >= '2019-07-29 17:45:20.137333')

SELECT "exchanges".* FROM "exchanges"
WHERE "exchanges"."incoming" = 'f'
  AND "exchanges"."order_cycle_id" IN (1, 2, 3, 4)

SELECT "enterprises".* FROM "enterprises"
WHERE "enterprises"."id" IN (3, 4, 5, 6)
```

I haven't got any perf numbers yet but each of the N+1 queries took as
long as the single `enterprises` query on my dev machine.

This should have a noticeable perf impact since the changed method
belongs to the `BaseController` seems to be executed in all HTML
requests as it gets called by

```ruby
before_filter :warn_invalid_order_cycles, if: :html_request?
```
2019-07-29 20:02:47 +02:00
luisramos0
2c6dab9c85 Add spec for Api::OrderCycleSerializer 2019-07-29 18:56:49 +01:00
Matt-Yorkley
7b2a146404 Move CSS rule to SCSS and remove broken css file reference 2019-07-29 18:16:36 +01:00
luisramos0
c45194473b Add spec to cover inject_current_order_cycle 2019-07-29 18:14:00 +01:00
luisramos0
3c0e6eeee2 Make inject_current_order_cycle render {} instad of null if current_order_cycle is null 2019-07-29 18:13:29 +01:00
luisramos0
ca5a5bf301 Convert oc.rabl to oc serializer and use it in both haml file and controller 2019-07-29 18:13:29 +01:00
luisramos0
ddf68444fb Move head scripts from admin layout to haed partial 2019-07-29 17:04:57 +01:00
luisramos0
4867649fc9 Remove dead code related to unused variable in spree: expand_variants 2019-07-29 17:04:57 +01:00
Pau Pérez Fabregat
35841066d1 Merge pull request #4086 from openfoodfoundation/transifex
Transifex
2019-07-29 17:33:19 +02:00
luisramos0
9bc81f236c Add doctype declaration as it is defined in spree layouts/admin so that html5 mode is enabled, otherwise html 4 mode is used by browsers and the observed layout problems happen 2019-07-29 13:46:35 +01:00
luisramos0
e26a54d897 Fix indentation problem in layouts/admin view
We move most entries inside wrapper as it should be and the last ones "admin_footer_scripts" and Spree.api_key inside the body tag as it should be
2019-07-29 13:33:11 +01:00
Transifex-Openfoodnetwork
ed1d637eb5 Updating translations for config/locales/es.yml 2019-07-29 19:06:20 +10:00
Transifex-Openfoodnetwork
831284c5c8 Updating translations for config/locales/es.yml 2019-07-29 19:03:13 +10:00
Transifex-Openfoodnetwork
e45b8f6981 Updating translations for config/locales/ca.yml 2019-07-29 19:02:24 +10:00
Transifex-Openfoodnetwork
d0f8f985fb Updating translations for config/locales/es.yml 2019-07-29 19:00:02 +10:00
Transifex-Openfoodnetwork
33eec61af8 Updating translations for config/locales/ca.yml 2019-07-29 18:59:14 +10:00
Transifex-Openfoodnetwork
00c324ae45 Updating translations for config/locales/fr.yml 2019-07-29 18:01:09 +10:00
Transifex-Openfoodnetwork
12a016d31d Updating translations for config/locales/fr.yml 2019-07-29 17:57:59 +10:00
dependabot-preview[bot]
8c7a7348f4 Bump devise-encryptable from 0.1.2 to 0.2.0
Bumps [devise-encryptable](https://github.com/plataformatec/devise-encryptable) from 0.1.2 to 0.2.0.
- [Release notes](https://github.com/plataformatec/devise-encryptable/releases)
- [Changelog](https://github.com/plataformatec/devise-encryptable/blob/master/Changelog.md)
- [Commits](https://github.com/plataformatec/devise-encryptable/compare/v0.1.2...v0.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-26 23:12:41 +00:00
Luis Ramos
af50bde088 Merge pull request #3786 from ja9-look/feature/sticky_header_on_scroll_mobile
sticky header for mobile
2019-07-26 11:22:33 +01:00
Luis Ramos
340b92e580 Merge pull request #3700 from luisramos0/2-0-without-auth-devise
Remove dependency to spree_auth_devise
2019-07-26 10:57:38 +01:00
luisramos0
f64653db14 Add icon to OC menu entry 2019-07-26 10:52:31 +01:00
Maikel
e6ef661f0d Merge pull request #4066 from luisramos0/reorg_spec_serializers
Organizing spec/serializers - put each file in the correct place
2019-07-26 16:23:23 +10:00
Hugo Daniel
3c2b6f4ed1 Remove data-hooks 2019-07-25 14:38:09 +02:00
Hugo Daniel
ec6f6056a8 Remove data-hooks 2019-07-25 14:34:06 +02:00
Hugo Daniel
6a621f47aa Remove data-hooks 2019-07-25 14:31:07 +02:00
Hugo Daniel
c464b21d76 Remove data-hooks 2019-07-25 14:27:53 +02:00
Hugo Daniel
c83d249147 Impor missing partials from spree to ofn and convert to haml 2019-07-25 14:23:24 +02:00
Kristina Lim
dae23d3c3b Remove unused inclusion of $window in OffcanvasCtrl 2019-07-25 20:22:51 +08:00
Hugo Daniel
aae5ae9f1e De-deface payments/new 2019-07-25 13:27:41 +02:00
Hugo Daniel
888e0e0bb4 Convert erb partials to haml 2019-07-25 13:22:55 +02:00
Hugo Daniel
a0b0fb05a6 Import payments/new from spree_backend to ofn 2019-07-25 13:22:32 +02:00
Hugo Daniel
a11562e4dd Fix incorrect indentation in variants table 2019-07-25 12:05:50 +02:00
Hugo Daniel
2d872c25bf Use Haml javascript tag to make autocomplete work 2019-07-25 11:20:51 +02:00
Hugo Daniel
986837d601 Import variants/_form.html.erb from spree_backend to ofn and de-deface it 2019-07-25 11:07:35 +02:00
Kristina Lim
def2693afc Move offcanvas JS to Angular controller 2019-07-25 17:01:46 +08:00
Luis Ramos
55f26f0a3d Merge pull request #4043 from luisramos0/bring_shipment
Bring spree/admin/orders/shipment and shipment_manifest partials from spree_backend and fix an authorization bug
2019-07-24 21:59:47 +01:00
Luis Ramos
7245d1eff4 Merge pull request #4049 from luisramos0/deface_admin_orders
De-deface admin orders adjustments page and customer details page
2019-07-24 21:59:08 +01:00
Hugo Daniel
353d6fbc5f Import variants/index from spree_backend to ofn and convert to Haml 2019-07-24 16:57:11 +02:00
Hugo Daniel
87ef0215b8 De-deface payment_methods/index 2019-07-24 14:49:29 +02:00
Hugo Daniel
4b6a02cb92 Convert payment_methods/index from ERB to Haml 2019-07-24 14:39:59 +02:00
Hugo Daniel
196a301133 Import payment_methods/index.html.erb from spree_backend to ofn 2019-07-24 14:38:20 +02:00
Hugo Daniel
0a88738faa Replace old ruby syntax with new 2019-07-24 14:37:00 +02:00
Hugo Daniel
4d6af57f79 De-deface product_properties/index 2019-07-24 13:17:45 +02:00
Hugo Daniel
110fd3ecdf Convert erb to haml 2019-07-24 13:12:58 +02:00
Hugo Daniel
1cb065f829 Import product_properties/index.html.erb from spree_backend to ofn 2019-07-24 13:09:04 +02:00
Hugo Daniel
1cfa499b0e De-deface _product_propery_fields 2019-07-24 13:01:50 +02:00
luisramos0
b9b8bc70dd Remove stock location name from shipment header in the order edit page 2019-07-24 11:50:17 +01:00
Hugo Daniel
3fc0d4a666 Convert _product_properties_fields from ERB to Haml 2019-07-24 12:40:24 +02:00
Hugo Daniel
de6c96d138 Import product_properties/_product_properties_fields.html.erb from Spree to OFN 2019-07-24 12:38:29 +02:00
Kristina Lim
d42da8737e Improve readability of selectors in page alert JS directive 2019-07-24 12:44:42 +08:00
Kristina Lim
6419edcb1f Integrate styles/animations for page alert, top bar, tab bar, off canvas 2019-07-24 12:44:42 +08:00
Kristina Lim
fca82375e8 Render home page alert as :page_alert outside main content 2019-07-24 12:44:42 +08:00
Kristina Lim
ca0f746cf1 Fix animation and layout for offcanvas menu
Uses strategy from this forum comment:
http://foundation.zurb.com/forum/posts/547#comment_8840
2019-07-24 12:43:44 +08:00
Kristina Lim
a93cf46f50 Fix syntax of existing animations for offcanvas 2019-07-24 12:37:42 +08:00
luisramos0
ffb8edef0b Fix rubocop css issues 2019-07-23 22:37:10 +01:00
luisramos0
74a030f6db Organizing spec/serializers - put each file in the correct place acccording to its namespace 2019-07-23 22:17:28 +01:00
luisramos0
7a8b5e89be Add specs to cover the most important new fields in api/admin/variant_serializer 2019-07-23 22:11:00 +01:00
luisramos0
90690cd238 Move api/admin/variant_serializer_spec to the correct folder under /spec 2019-07-23 22:03:40 +01:00
luisramos0
90c621ac07 Improve translations, css and add button aligment in subscriptions_line_items variant autocomplete 2019-07-23 21:38:29 +01:00
luisramos0
2d5eccbf97 Add :in_stock, :stock_location_id, :stock_location_name to admin variant serializer, these are needed for the variant_autocomplete js code from spree 2019-07-23 21:38:29 +01:00
luisramos0
7e6259da31 Replace admin/variants/search rabl template with existing admin variant serializer with a few added attributes
This commit fixes a bug as the image of the variatn was not being rendered, we need to fetch the image of the product, not the image of the variant.
2019-07-23 21:37:45 +01:00
Luis Ramos
1f75c7e5e4 Merge pull request #4047 from luisramos0/undeface
De-deface some admin configuration pages and the general admin layout and menu
2019-07-23 18:36:09 +01:00
luisramos0
11974689ef Remove dead code under views/spree/shared 2019-07-23 16:42:00 +01:00
Kristina Lim
e1fce8304d Update weight calculator and add specs 2019-07-23 23:24:00 +08:00
Kristina Lim
0d6ba90ea1 Round off fee from Calculator::Weight to nearest cent 2019-07-24 00:42:42 +10:00
luisramos0
a1e6e4c38f Fix rubocop issues 2019-07-23 14:35:24 +01:00
Luis Ramos
77fb73f802 Merge pull request #4065 from coopdevs/get-latest-spree-revision
Brings in the latest Spree fork's Git commit
2019-07-23 14:28:49 +01:00
Pau Perez
9f7376a5ae Brings in the latest Spree fork's Git commit
This successfully closes #3903 by bringing in the changes done in
https://github.com/openfoodfoundation/spree/pull/41.
2019-07-23 14:56:33 +02:00
luisramos0
5739a82c19 Remove unused admin variants search rabl template 2019-07-23 12:30:00 +01:00
Luis Ramos
eae373ef4b Merge pull request #4061 from openfoodfoundation/revert-3938-get-last-spree-fork-patch
Revert "Handle soft deleted variants in order edit"
2019-07-22 21:06:10 +01:00
Luis Ramos
465332d5f9 Revert "Handle soft deleted variants in order edit" 2019-07-22 21:05:41 +01:00
Luis Ramos
e98b89625f Merge pull request #3938 from openfoodfoundation/get-last-spree-fork-patch
Handle soft deleted variants in order edit
2019-07-22 21:05:12 +01:00
luisramos0
cf61254c9e Remove unnecesary rabl template 2019-07-22 18:42:20 +01:00
luisramos0
1d92d6cc33 Remove unused api endpoint order_cycles and also action enterprises/managed and respective views 2019-07-22 17:35:41 +01:00
luisramos0
6b32764c99 Remove unused taxon.rabl from views/json 2019-07-22 16:29:54 +01:00
Pau Perez
be4fbc4d23 Update Gemfile to get spree from a feature branch
This allows us to test
https://github.com/openfoodfoundation/spree/pull/41. If it passes
testing I will then revert it back to the `2-0-4-stable` branch but
updating the target commit in the Gemfile.lock.
2019-07-22 15:40:31 +02:00
luisramos0
ea72a10b9a Remove unused rabl files from views/json 2019-07-22 12:14:10 +01:00
luisramos0
9b567a6710 Remove injection_json that renders json partials, we only use ams serializers now, not rabl partials 2019-07-21 23:55:59 +01:00
luisramos0
a8ce31fa90 Replace views/json/_flash.rabl with an ams injector with serializer 2019-07-21 22:56:15 +01:00
luisramos0
4c964fea0d Replace views/json/_current_user.rabl with an ams injector with serializer 2019-07-21 22:48:36 +01:00
luisramos0
6d7c41c04b Bring db/default/users from spree_auth_devise, this is necessary to create the first user in the DB 2019-07-20 20:48:49 +01:00
Luis Ramos
a6a695660f Merge pull request #4002 from luisramos0/more_rails4
Adapting queries in permissions to Rails 4
2019-07-19 15:17:01 +01:00
Luis Ramos
0058ef5e04 Merge pull request #4048 from idanceinbetween/4034
Add grey line below nav bar, change logo img max height 44px
2019-07-19 12:13:14 +01:00
Luis Ramos
4831bae9cb Merge pull request #3953 from mkllnk/3727-first-credit-card-default
First stored credit card becomes default again
2019-07-19 12:12:09 +01:00
Luis Ramos
f7679780de Merge pull request #4032 from luisramos0/subs_oc_date_issue
3544 Add date format to moment date conversion
2019-07-18 19:52:49 +01:00
luisramos0
f2ac354e00 Make features/admin/orders_spec test a bit more reliable by expecting element to be there before using it 2019-07-18 14:29:38 +01:00
Maikel
88ffa46ce7 Merge pull request #4045 from openfoodfoundation/transifex
Transifex
2019-07-18 16:35:41 +10:00
Maikel
869431c68d Merge pull request #3926 from mkllnk/report-missing-payments
Add rake task to report lost payments
2019-07-18 15:01:14 +10:00
luisramos0
3d6fd10e59 Add warning about creation of orders when unpausing a subscription 2019-07-17 12:14:36 +01:00
luisramos0
81482683cf Extract method in subs controller 2019-07-17 12:08:51 +01:00
luisramos0
57f1742f24 Save subscription form on subs unpause so that proxy orders and orders are synced 2019-07-17 12:08:48 +01:00
Maikel
a1f8530489 Merge pull request #3962 from luisramos0/first_view_spec
First 2 view specs in OFN
2019-07-17 10:57:58 +10:00
luisramos0
a75a0da981 Remove unused deface in spree/admin/orders/show, this action doesnt exist in ofn v2 2019-07-16 21:12:48 +01:00
luisramos0
5744240f91 Move customer_details/_form defaces to the view 2019-07-16 21:12:09 +01:00
luisramos0
873c56a642 Move customer_details/edit/replace_customer_search deface to view 2019-07-16 21:09:48 +01:00
luisramos0
f53a75660f Convert spree/admin/orders/customer_details view from erb to haml 2019-07-16 21:05:19 +01:00
luisramos0
50dcbe0b57 Bring spree/admin/order/customer_details from spree_backend 2019-07-16 21:03:35 +01:00
luisramos0
f9861fee79 De-deface spree/admin/adjustments/_adjustments_table by moving deface content to the view 2019-07-16 21:01:08 +01:00
luisramos0
d8ae97f923 Move spree/admin/adjustments/_form/add_tax_rate deface to view 2019-07-16 20:53:24 +01:00
luisramos0
9f5db217fe Convert spree/admin/adjustments views from erb to haml 2019-07-16 20:51:55 +01:00
luisramos0
c1c5dcac09 Bring spree/admin/adjustments pages from spree_backend 2019-07-16 20:51:55 +01:00
luisramos0
6064f096a7 Fix a pre-existing problem in orders_tab by moving the links in to the li elements 2019-07-16 20:16:32 +01:00
luisramos0
a62fa755f5 Remove page_title_classes as it is breaking the rendering of the classes attribute and it is no longer used 2019-07-16 20:16:32 +01:00
luisramos0
fa25991f0f Fix problem in previous de-deface, move sections around in general settings page to keep order. No changes in code, just moving 2019-07-16 20:16:32 +01:00
luisramos0
6f2be1dfa6 Fix issue in layouts/admin view, make classes compute correctly 2019-07-16 20:16:32 +01:00
luisramos0
c81a9fd032 Fix error in js tag in head 2019-07-16 20:16:32 +01:00
luisramos0
665d0cc86b Fix error related to missing _hamlout method by replacing code with standard haml 2019-07-16 20:16:32 +01:00
luisramos0
a34d8a3f20 Revert "Move app_wrapper deface to spree/layouts/admin view"
This reverts commit bb18f6ecf3c1d0ecf7c010623215d161a6102f2b.
2019-07-16 20:16:32 +01:00
luisramos0
6e35701dd6 Remove unused add_enterprise_fees_to_admin_configurations_menu deface, this menu entry is already in the view 2019-07-16 20:16:32 +01:00
luisramos0
9991458d2a Remove spree/admin/shared/_order_details defaces, these are only used in admin/order/show which is a view that is not used in ofn anymore, only admin/order/edit is used 2019-07-16 20:16:32 +01:00
luisramos0
a843fd73b7 Remove admin/shared/_order_tabs/add_customer_name, this is already in the order tabs view 2019-07-16 20:16:32 +01:00
luisramos0
9765b1e908 Move admin/shared/_head/replace_spree_title deface to head view 2019-07-16 20:16:32 +01:00
luisramos0
5ccadc1f7d Convert spree/admin/shared/_head view from erb to haml 2019-07-16 20:16:32 +01:00
luisramos0
539805e2c2 Bring spree/admin/shared/head partial from spree_backend 2019-07-16 20:16:32 +01:00
luisramos0
fac64ef5bf Remove layouts/spree_application/inside_head deface, this view is in spree_frontend which is not used in ofn anymore 2019-07-16 20:16:32 +01:00
luisramos0
a17a0a62bc Move spree/layouts/bare_admin/add_login_nav deface to layout/bare_admin view 2019-07-16 20:16:32 +01:00
luisramos0
1e91de106f Move admin html head deface to layout admin view and remove repeated (in shared/head partial) content type tag 2019-07-16 20:16:32 +01:00
luisramos0
73252132a6 Move add_i18n_script deface to layout/admin view 2019-07-16 20:16:32 +01:00
luisramos0
e3c383c61c Convert spree/admin/shared/_tabs.html from erb to haml and move menu entries from layouts/admin to the tabs view 2019-07-16 20:16:32 +01:00
luisramos0
aafb134be7 Move spree/layouts/admin/ tabs deface to spree/layout/admin view 2019-07-16 20:16:32 +01:00
luisramos0
70a1996435 Move add_currency_config deface to spree/layout/admin view 2019-07-16 20:16:31 +01:00
luisramos0
1712cb2617 Move app_wrapper deface to spree/layouts/admin view
In admin layout, only adds a div after the body tag.
2019-07-16 20:16:31 +01:00
luisramos0
25df057d05 Move spree/layouts/admin/add_analytics deface to spree/layouts/admin view 2019-07-16 20:16:31 +01:00
luisramos0
24a9991162 Convert views/spree/layouts/admin.html from erb to haml 2019-07-16 20:16:31 +01:00
luisramos0
156ff2da89 Bring spree/layouts/admin from spree_backend to de-deface it 2019-07-16 20:16:31 +01:00
luisramos0
e36b4ed01a Move temp_controller_list deface to shipping_categories index view 2019-07-16 20:16:23 +01:00
idanceinbetween
41b775b173 Remove multiline 2019-07-16 20:10:18 +01:00
idanceinbetween
35570feba0 Comment out new changes 2019-07-16 20:04:50 +01:00
idanceinbetween
1d8cfe59a2 Change hex value to variable 2019-07-16 19:37:08 +01:00
idanceinbetween
abd3efe82a Replace lightgray to hex 2019-07-16 19:32:19 +01:00
idanceinbetween
389b53cb71 Add grey line below nav bar, change logo img max height 44px 2019-07-16 19:14:10 +01:00
luisramos0
4f60273198 Move temperature_controlled_form_element deface to shipping_categories form view 2019-07-16 14:50:16 +01:00
luisramos0
856fa8685a Convert spree/admin/shipping_categories views from erb to haml 2019-07-16 14:48:47 +01:00
luisramos0
9ac4c0ba30 Bring spree/admin/shipping categories from spree_backend so we can de-deface it 2019-07-16 14:46:26 +01:00
luisramos0
2709f237f5 Move image_format deface to image settings view 2019-07-16 14:44:38 +01:00
luisramos0
9db4edcd0d Convert spree/admin/image_settings/edit.html from erb to haml 2019-07-16 14:43:20 +01:00
luisramos0
22c9f33f4c Bring image_settings view from spree_backend 2019-07-16 14:39:14 +01:00
luisramos0
24ea2a4398 Move number_localization deface to general settings view 2019-07-16 14:28:47 +01:00
luisramos0
8178f5388c Move legal settings deface to general settings view 2019-07-16 14:27:32 +01:00
luisramos0
c0c5e9d7dd Move embedded_shopfronts deface to general settings view 2019-07-16 14:26:33 +01:00
luisramos0
19f8f5c6fa Convert general_settings/edit.html from erb to haml 2019-07-16 14:15:51 +01:00
luisramos0
83a306c31b Convert class attributes to . notation in haml 2019-07-16 14:09:48 +01:00
luisramos0
d6020cdb6f Bring general_settings/edit.html.erb from spree_backend to de-deface it 2019-07-16 13:57:35 +01:00
luisramos0
3b467dbae8 Adapt line_item_syncer to the case where item is not added to the completed order because of insufficient stock and the subscription quantity is updated for that item afterwards 2019-07-16 12:08:08 +01:00
Kristina Lim
77c78f35d3 Update all locales with the latest Transifex translations 2019-07-16 18:53:24 +08:00
luisramos0
306390440a Revert "Swith line_item_syncer.create_new_items from deleting line item in the case of stock issue, to simply set the quantity to zero. This makes things easier later as the line item is already present if the user tries to change quantity of the subscription_line_item"
This reverts commit d153e58933.
2019-07-16 11:00:21 +01:00
luisramos0
267131626e Fix typo and add test case to cover out of stock case 2019-07-16 10:58:25 +01:00
Luis Ramos
2280b15664 Merge pull request #4035 from kristinalim/fix/4033-remove_line_item_adjustments_when_line_item_removed
4033 Remove line item adjustments when line item removed
2019-07-16 09:54:33 +01:00
Transifex-Openfoodnetwork
f843a0b4d9 Updating translations for config/locales/en_AU.yml 2019-07-16 17:08:24 +10:00
Transifex-Openfoodnetwork
965a274332 Updating translations for config/locales/en_AU.yml 2019-07-16 17:05:40 +10:00
Transifex-Openfoodnetwork
cb2a842746 Updating translations for config/locales/en_AU.yml 2019-07-16 17:05:17 +10:00
luisramos0
a6655623d0 New admin orders edit view spec and workaround (current_ability) to make view specs work 2019-07-15 21:59:36 +01:00
luisramos0
2a2d05ad39 First view spec in OFN testing the print invoice button display in the orders list page 2019-07-15 21:59:36 +01:00
luisramos0
e8127d81dc Change how we display variant name in order edit page, use VariantAndLineItemNaming helper method 2019-07-15 18:37:19 +01:00
luisramos0
cd7906a57b Move translations from Spree.t to root and add them to en.yml 2019-07-15 17:48:10 +01:00
luisramos0
02c573f146 Remove logic that hides item split, because the partial is now in the ofn codebase, we can now simply remove the split-item button 2019-07-15 17:11:41 +01:00
luisramos0
112017a158 Remove variants/split partial from orders/shipments partial
In OFN we have one shipment per order so it doesnt make sense to split items between shipments
2019-07-15 17:07:33 +01:00
luisramos0
4a07d67037 Convert spree/admin/orders/_shipment partial from erb to haml 2019-07-15 16:42:45 +01:00
luisramos0
54156dfd32 Convert spree/admin/orders/_shipment_manifest partial from erb to haml 2019-07-15 16:42:19 +01:00
luisramos0
ee20d35487 Fix authorization issue in shipment actions, authorization was being done on a struct (shipment manifest), now it's done on the shipment itself
This is similar to https://github.com/spree/spree/pull/5624
2019-07-15 15:38:46 +01:00
luisramos0
be18244abc Bring views/spree/admin/orders/_shipment and views/spree/admin/orders/_shipment_manifest from spree backend 2019-07-15 15:37:24 +01:00
luisramos0
02099ebdae Remove details about stock in line_item_syncer so that we avoid confusing the user with stock numbers, this way the user will know what is the problem and can check stock levels and the order for more details 2019-07-14 21:40:57 +01:00
luisramos0
d153e58933 Swith line_item_syncer.create_new_items from deleting line item in the case of stock issue, to simply set the quantity to zero. This makes things easier later as the line item is already present if the user tries to change quantity of the subscription_line_item 2019-07-14 20:59:42 +01:00
luisramos0
c2a59a374c Fix rubocop issues by simplifying method 2019-07-14 17:21:15 +01:00
luisramos0
2a1011921b Reuse line_item_syncer.add_order_update_issue in line_item_syncer.update_item_quantities to add stock info to the update_quantity order issues 2019-07-14 16:43:46 +01:00
luisramos0
df27ee0d3e Refactor line_item_syncer.add_order_update_issue out of line_item_syncer.create_new_items 2019-07-14 16:06:09 +01:00
luisramos0
c2851015ce Fix deleting created item (destroy doesnt work before save) and add order_update_issue with message so that user can understand what happened 2019-07-14 15:58:00 +01:00
luisramos0
d0c246c345 Fix some rubocop issues 2019-07-14 12:28:32 +01:00
Kristina Lim
e58546a412 Move offcanvas menu content to separate partial 2019-07-14 13:52:47 +08:00
luisramos0
6aed9ba549 Make line_item_syncer delete new line items if stock is insufficient 2019-07-13 22:57:13 +01:00
luisramos0
4f2bc33ec3 Change line_item_syncer to verify stock if order is already complete, this will happen for orders in the current OC when a subscription is changed 2019-07-13 20:56:34 +01:00
luisramos0
0f3404ca27 Rename order_syncer.future_and_undated_orders to explicitly include completed orders from current OC: orders_in_order_cycles_not_closed 2019-07-12 22:20:09 +01:00
Kristina Lim
2c279fd02d Remove line item adjustments if line item deleted 2019-07-13 03:58:01 +10:00
Kristina Lim
8a048cc155 Add proof line item adjustments remain after line item removal 2019-07-13 01:43:07 +08:00
Luis Ramos
b3c378e8c1 Merge pull request #4029 from Matt-Yorkley/js_render_blocking2
Js render blocking 2
2019-07-12 16:34:31 +01:00
Luis Ramos
39475be792 Merge pull request #4030 from Matt-Yorkley/line_item_errors
LineItems can always access soft-deleted variants
2019-07-12 16:33:36 +01:00
luisramos0
9e2e460ac5 Add date format to moment date conversion. This conversion was not working on firefox 2019-07-12 12:01:18 +01:00
luisramos0
18006ea9c8 Change devise config to speed up password encryption in tests 2019-07-12 10:12:53 +01:00
luisramos0
71b648e9fa Add some tests to features/admin/users_spec from spree_auth_devise 2019-07-12 10:02:40 +01:00
luisramos0
eacd76bfa4 Add spec to features/admin/products_spec from spre_auth_devise 2019-07-11 19:47:17 +01:00
luisramos0
791ff842aa Add some tests to models/spree/user_spec from spre_auth_devise 2019-07-11 19:39:31 +01:00
luisramos0
ac0123734a Add some tests from spree/users_controller_spec from spree_auth_devise 2019-07-11 18:33:18 +01:00
luisramos0
7cab99efdf Run transpec on users_controller 2019-07-11 18:07:23 +01:00
luisramos0
5378bb7b34 Add adapted version of spree/admin/users_controller_spec from spree_auth_devise 2019-07-11 17:45:56 +01:00
luisramos0
942824cd74 Improve comments in UserMailer 2019-07-11 16:37:30 +01:00
Pau Pérez Fabregat
bdeb56bfaf Merge pull request #4028 from openfoodfoundation/transifex
Transifex
2019-07-11 17:28:38 +02:00
Matt-Yorkley
fb4e573cfa Add a soft-deleted test in line_item_spec 2019-07-11 16:07:30 +01:00
Transifex-Openfoodnetwork
e65df31bc3 Updating translations for config/locales/nl_BE.yml 2019-07-12 00:29:50 +10:00
Transifex-Openfoodnetwork
ce1ac57522 Updating translations for config/locales/de_DE.yml 2019-07-11 23:53:17 +10:00
Transifex-Openfoodnetwork
09ff57d462 Updating translations for config/locales/en_BE.yml 2019-07-11 23:50:31 +10:00
Transifex-Openfoodnetwork
542cf0cf4f Updating translations for config/locales/fr_BE.yml 2019-07-11 23:43:29 +10:00
Transifex-Openfoodnetwork
f4113745ce Updating translations for config/locales/fr.yml 2019-07-11 23:11:32 +10:00
Transifex-Openfoodnetwork
6d197c53e0 Updating translations for config/locales/en_ZA.yml 2019-07-11 21:40:38 +10:00
Matt-Yorkley
b2c6e6271c LineItems can always access soft-deleted variants 2019-07-11 11:33:34 +01:00
Luis Ramos
cdd36eeefc Merge pull request #3674 from Matt-Yorkley/spree2/import_description
Allow import to proceed when updating a product and `description` is set
2019-07-10 21:09:30 +01:00
Matt-Yorkley
97148f6f57 Send embedded Stripe javascript to :injection_data 2019-07-10 19:28:20 +01:00
Matt-Yorkley
6219b3f0c3 Revert "Revert "Fix JS render-blocking in Darkswarm""
This reverts commit ffeca41e
2019-07-10 17:14:08 +01:00
Transifex-Openfoodnetwork
d66cac7a26 Updating translations for config/locales/ca.yml 2019-07-10 21:20:51 +10:00
Transifex-Openfoodnetwork
07c11b9b1f Updating translations for config/locales/es.yml 2019-07-10 21:18:28 +10:00
Transifex-Openfoodnetwork
6a232a1f36 Updating translations for config/locales/ca.yml 2019-07-10 21:17:43 +10:00
Maikel
1a61357be8 Merge pull request #4024 from openfoodfoundation/transifex
Transifex
2019-07-10 11:17:12 +10:00
Maikel
b2eeb5d687 Merge pull request #4025 from openfoodfoundation/revert-3988-js_render_blocking
Revert "Fix JS render-blocking in Darkswarm"
2019-07-10 11:00:17 +10:00
Maikel
ffeca41ef4 Revert "Fix JS render-blocking in Darkswarm" 2019-07-10 10:24:25 +10:00
Transifex-Openfoodnetwork
68c0936766 Updating translations for config/locales/en_GB.yml 2019-07-10 04:39:47 +10:00
Luis Ramos
23b6267e30 Merge pull request #3916 from luisramos0/schedules_of_coordinator
OC schedules are now filtered to schedules of OCs with same coordinator
2019-07-09 14:21:34 +01:00
Luis Ramos
6872ccfb72 Merge pull request #3963 from luisramos0/hide_invoices
Hide invoices feature
2019-07-09 14:20:50 +01:00
luisramos0
b1b791e4ee Update all locales with the latest Transifex translations 2019-07-09 14:19:35 +01:00
Luis Ramos
1779b759f7 Merge pull request #4017 from openfoodfoundation/transifex
Transifex
2019-07-09 14:15:38 +01:00
Transifex-Openfoodnetwork
3ebbf5a55d Updating translations for config/locales/fr.yml 2019-07-09 22:42:05 +10:00
Luis Ramos
83ce2ac3dc Merge pull request #3988 from Matt-Yorkley/js_render_blocking
Fix JS render-blocking in Darkswarm
2019-07-09 12:30:30 +01:00
Luis Ramos
aaf850a095 Merge pull request #4010 from luisramos0/fuubar_upgrade
Apply 2.1.1 hotfix to master
2019-07-09 12:24:54 +01:00
Luis Ramos
3e9bf8aa1f Merge pull request #3964 from openfoodfoundation/hand-soft-deleted-products-in-orders-and-fulfillment-report
Handle soft deleted products in orders and fulfillment report
2019-07-09 12:19:28 +01:00
luisramos0
95832c96ac Delete redundant spec, this case is now covered in a view spec 2019-07-09 09:15:38 +01:00
Jon Leighton
4398ea12b8 Convert several fields from string to text
See discussion here:
https://github.com/openfoodfoundation/openfoodnetwork/pull/3751#issuecomment-503416955

Fixes #3192.

I have also done a pass over the schema to identify other fields which
would benefit from being a text rather than a string. However, I ignored
all `spree_*` tables because I didn’t want to mess up the ‘default’
Spree schema.
2019-07-09 13:11:30 +10:00
Luis Ramos
8a700307d2 Merge pull request #3992 from Matt-Yorkley/cart_button_bug
Fix display bug in cart button on mobile menu
2019-07-08 18:33:36 +01:00
luisramos0
86accc227e Convert erb files brought from spree_auth_devise to haml 2019-07-08 18:09:03 +01:00
Luis Ramos
1756ddd0e9 Merge pull request #3989 from Matt-Yorkley/preload_primary_font
Preload primary font to speed up page rendering
2019-07-08 17:43:15 +01:00
Luis Ramos
fe71781d70 Merge pull request #3791 from jazzdragon/1766-registration-scroll
1766 registration scroll
2019-07-08 15:10:35 +01:00
Luis Ramos
ec65951ef3 Merge pull request #3959 from jonleighton/issue-1848
Edit tooltip text to make it readable
2019-07-08 15:09:11 +01:00
luisramos0
1681e8a572 Remove unused auth config 2019-07-08 14:06:01 +01:00
luisramos0
e897eb0439 Remove Spree::BaseController.class_eval, these methods are already in the application helper through spree::application_helpers
We can ignore the difference in spree_logout_path as spree.logout_path is the user_sessions#destroy route
2019-07-08 13:59:26 +01:00
luisramos0
36e3362fc1 Adding missing translation that is now being used after being brought from spree_auth_devise 2019-07-08 13:23:18 +01:00
luisramos0
10e123a9c4 Move spree/authentication_helpers injection from spree initializers directly to the application_controller
Also, switch from using send to public_send making rubocop happier
2019-07-08 13:11:57 +01:00
luisramos0
0101dcdd93 Remove unused Spree::Dash from controllers brought from spree_auth_devise 2019-07-08 13:10:52 +01:00
luisramos0
9416f61fb3 Remove spree/checkout_controller.completion_route only used in spree/checkout_controller.update which is never used in OFN. Checkout update happpens in the checkout_controller.update 2019-07-08 13:04:38 +01:00
luisramos0
8efd69c3d1 Remove unnecessary checkout registration code, it's not used in OFN 2019-07-08 12:57:17 +01:00
luisramos0
dcbdfbb081 Fix rubocop issues in multiple files copied from spree_auth_devise, mostly hash rockets 2019-07-08 11:22:56 +01:00
luisramos0
92968c5efe Merge spree/users_sessions_controller into spree/users_sessions from spree_auth_devise 2019-07-07 22:06:18 +01:00
luisramos0
c8ac64566f Merge spree/users_controller_decorator into spree/user_controller 2019-07-07 22:04:04 +01:00
Transifex-Openfoodnetwork
633c7737e4 Updating translations for config/locales/en_ZA.yml 2019-07-08 04:04:48 +10:00
luisramos0
05a72be273 Move handle_asynchronously :send_reset_password_instructions to after send_reset_password_instructions declaration
This was as it was before the merge of user_decorator and user, the declaration was in the original class and the handle_asynchronously part was in the decorator which was loaded after the main user class from spree_auth_devise, this commit restores the order and fixes a spec in authentication_spec
2019-07-07 17:53:12 +01:00
luisramos0
b1cd950051 Add missing translation keys from spree_auth_devise 2019-07-07 17:12:54 +01:00
luisramos0
f557996817 Add deface overrides from spree_auth_devise for the users menu tab, the admin top bar and the shared login bar (maybe dead code this last one) 2019-07-06 22:53:20 +01:00
luisramos0
1a64a737d4 Add ActionController::Metal frorm spree_auth_devise for api authentication 2019-07-06 10:50:48 +01:00
luisramos0
7c0087cb30 Remove reference to empty spree_auth css and js files from spree_auth_devise 2019-07-06 00:02:40 +01:00
luisramos0
17448699f9 Bring devise initializer from spree_auth_devise and fix spree initializer details 2019-07-05 22:45:59 +01:00
luisramos0
a413f22e12 Remove unnecessary dependency to spree/users helper 2019-07-05 22:37:07 +01:00
luisramos0
893952f46b Merge user_mailer_decorator into user_mailer 2019-07-05 22:31:06 +01:00
luisramos0
061e3cd722 Add user mailer from spree_auth_devise 2019-07-05 22:29:51 +01:00
luisramos0
a83790951d Add model auth_config from spree_auth_devise 2019-07-05 21:58:29 +01:00
luisramos0
4e33529845 Merge user_decorator.rb into user.rb 2019-07-05 21:58:28 +01:00
luisramos0
a2a8b330b7 Add User class from spree_auth_devise as is 2019-07-05 21:58:28 +01:00
luisramos0
9669016573 Add required views from spree_auth_devise 2019-07-05 21:58:28 +01:00
luisramos0
2755cb9ec7 Add users_tab partial from spree_auth_devise 2019-07-05 21:58:28 +01:00
luisramos0
fdcc4c2447 Remove dependency to spree auth devise 2019-07-05 21:58:07 +01:00
Pau Perez
f42bf72b32 Fix rubocop violations
It's not affordable to fix the failed Metrics cops in the scope of this
bug fix, but now, with a separate class, it'll be easier.
2019-07-05 18:19:58 +02:00
Pau Perez
8ab77b077b Fix spec
This needs to be revisited. I'm not sure it's the most appropriate spec
as it seems to be testing just part of story.
2019-07-05 18:19:58 +02:00
Pau Perez
9b03833df0 Extract orders & fulfillments default report clasts 2019-07-05 18:19:58 +02:00
Pau Perez
fada30435f DRY some procs from report 2019-07-05 18:19:58 +02:00
luisramos0
fc0ffda8ec Bring routes and controllers from spree_auth_devise 2019-07-05 15:08:42 +01:00
Luis Ramos
397729ed3d Merge pull request #4001 from pacodelaluna/3990-display-enterprise-id-in-profile
Display enterprise ID in profile
2019-07-05 11:14:43 +01:00
luisramos0
88312b8e4a Make OrdersHelper.invoice_links simpler 2019-07-05 11:08:51 +01:00
luisramos0
9be3ff90f7 Make OrdersHelper.complete_order_links simpler 2019-07-05 11:06:49 +01:00
luisramos0
a5b5e5de32 Remove trailing backslash 2019-07-05 10:58:53 +01:00
luisramos0
e66dea7e03 Improve query in filter_schedules_by_enterprise_id. Makes join to OCs explicity. 2019-07-05 10:37:27 +01:00
Maikel
4c5ed2fa45 Merge pull request #3999 from openfoodfoundation/transifex
Transifex
2019-07-05 11:59:40 +10:00
Maikel
40c0e69f11 Merge pull request #4000 from Matt-Yorkley/v2_migrations
Fix failing migration by clearing schema cache
2019-07-05 10:56:26 +10:00
Transifex-Openfoodnetwork
f3837fb6af Updating translations for config/locales/en_GB.yml 2019-07-05 05:08:46 +10:00
Pau Perez
db7b7bbde2 Fix finding supplier for a deleted product 2019-07-04 18:52:56 +02:00
luisramos0
ef61310bad Fix long lines in order_cycle_permissions and permissions 2019-07-04 17:17:58 +01:00
luisramos0
91da0114e3 Upgrade fuubar to 241 to skip yanked 240 2019-07-04 16:09:36 +01:00
Pau Perez
ee301c5e2f Address Code Climate (rubocop) issues 2019-07-04 17:01:06 +02:00
Pau Perez
4a67ffab25 Add a test case for reports with deleted products 2019-07-04 17:01:06 +02:00
Pau Perez
4d060815d0 Extract unscoping logic into method
DRYies out the code a bit.
2019-07-04 17:01:06 +02:00
Pau Perez
f91bd03c25 Add clarifying comment to report 2019-07-04 17:01:06 +02:00
Pau Perez
7de4ec2a90 Fix orders and fulfillments report
It bypasses the default_scope to retrieve deleted variants in the orders
and fulfillment report.
2019-07-04 17:01:06 +02:00
Pau Perez
812d8cac4a Make complex method a bit more readable 2019-07-04 17:01:06 +02:00
Transifex-Openfoodnetwork
d1faed282f Updating translations for config/locales/es.yml 2019-07-05 00:22:01 +10:00
Transifex-Openfoodnetwork
26195314eb Updating translations for config/locales/ca.yml 2019-07-05 00:09:05 +10:00
François Turbelin
912483660f Put the uid under the permalink 2019-07-04 09:51:32 +02:00
François Turbelin
d12a7c2c76 Apply last suggestions 2019-07-04 09:43:35 +02:00
luisramos0
dee1c3d139 Fix typo in order_cycle_permissions.rb 2019-07-03 22:58:33 +01:00
François Turbelin
101cff02c6 Add locale keys 2019-07-03 23:06:50 +02:00
luisramos0
bb9c54a445 Use enterprises.id instead of :id to remove ambiguous column errors 2019-07-03 22:03:40 +01:00
François Turbelin
5ce2af454e Clean id field 2019-07-03 23:00:36 +02:00
luisramos0
e5f396f975 Fix Permissions.related_enterprises_granted by adding explicit reference to table 2019-07-03 20:18:01 +01:00
luisramos0
a57a93d414 Adapt permissions.rb and order_cycle_permissions to rails 4 2019-07-03 20:18:01 +01:00
luisramos0
a82b1d8129 Adapt exchange.involving scope to rails 4 2019-07-03 20:18:00 +01:00
luisramos0
5184fa540c Adapt enterprise_relationship permitting and permitted_by scopes to rails 4 2019-07-03 20:18:00 +01:00
Luis Ramos
951787d456 Merge pull request #3987 from mkllnk/3978-optimise-products-cache
3978 Optimise products cache
2019-07-03 19:59:07 +01:00
Luis Ramos
b35743b6e4 Merge pull request #3968 from mkllnk/3924-rescue-failing-shipment
Rescue checkout on shipping id conflict
2019-07-03 19:56:24 +01:00
Luis Ramos
4fc30ba50e Merge pull request #3994 from openfoodfoundation/dependabot/bundler/knapsack-1.17.2
Bump knapsack from 1.17.1 to 1.17.2
2019-07-03 19:55:20 +01:00
François Turbelin
97a401a307 Display enterprise ID in profile 2019-07-03 18:10:59 +02:00
Pau Pérez Fabregat
232e3b8262 Merge pull request #3993 from openfoodfoundation/dependabot/bundler/simplecov-0.17.0
Bump simplecov from 0.16.1 to 0.17.0
2019-07-03 16:28:56 +02:00
Pau Pérez Fabregat
b3b66d5825 Merge pull request #3970 from mkllnk/444-feature-toggle-use-env
Toggle features via env instead of initializer
2019-07-03 16:27:01 +02:00
Pau Pérez Fabregat
1b532f995c Merge pull request #3919 from mkllnk/db-mirror-script
Db mirror script
2019-07-03 16:24:01 +02:00
Pau Pérez Fabregat
f5544494f0 Merge pull request #3997 from mkllnk/remove-ng-test-script
Remove obsolete Javascript test script
2019-07-03 16:23:41 +02:00
Pau Pérez Fabregat
2de32b54ba Merge pull request #3995 from mkllnk/how-to-not-archive-branches
Remove obsolete script to archive branches
2019-07-03 16:23:15 +02:00
Pau Pérez Fabregat
b6e2dadbb3 Merge pull request #3996 from mkllnk/remove-backup-script
Remove obsolete backup script
2019-07-03 16:22:36 +02:00
Matt-Yorkley
473e635d54 Merge pull request #3982 from luisramos0/mobile_bug
Fixes menu problem with long shop names
2019-07-03 13:30:41 +01:00
Transifex-Openfoodnetwork
3e11cdb5c1 Updating translations for config/locales/fr.yml 2019-07-03 22:14:43 +10:00
Transifex-Openfoodnetwork
842e8da2c3 Updating translations for config/locales/fr.yml 2019-07-03 22:11:35 +10:00
Matt-Yorkley
24f8e6d2ec Fix failing migration by clearing schema cache 2019-07-03 12:59:10 +01:00
Maikel
568d58405d Merge pull request #3986 from openfoodfoundation/transifex
Transifex
2019-07-03 18:46:14 +10:00
Maikel Linke
b23489fa40 Remove obsolete Javascript test script
This script has been replaced by a rake task a long time ago:

  bundle exec rake karma:run   # to run the specs once
  bundle exec rake karma:start # to run the spec after each change

We don't need it any more and it doesn't work on my machine.
2019-07-03 14:50:33 +10:00
Maikel Linke
503658f930 Remove obsolete backup script
This script doesn't work anymore. It was written for old an Australian
production server. We have automatic backups now. And if we wanted to
take a backup manually, we should probably give it a meaningful name,
not using a script.
2019-07-03 14:46:56 +10:00
Maikel Linke
24bf5f0fea Remove obsolete script to archive branches
Apparently, there was a practice to archive branches by tagging them
"archive/branch-name" and then deleting them. We don't practice that
anymore and I would suggest to not start doing it again. Our setup is a
bit different now.

We now use our own forks for feature branches and can have our own,
individual archiving practices in our forks. There is no need to have a
central graveyard of people's "work after progress".

The old feature branches we used to have in the central repository got
archived in another fork:
https://github.com/openfoodfoundation/openfoodnetwork-archive/

Branches associated to pull requests should be deleted after the pull
request has been closed. Github keeps a reference to those branches in
the pull request which is like an archive.

Special branches we still have and delete from time to time:

- transifex: Created for new translations, deleted afterwards.
- dependabot/*: Dependabot always creates pull requests. See above.
- 1-31-1-stable etc: They only live as long as they are supported.

I would also like to delete the old `archive/*` tags. They are in the
openfoodnetwork-archive repository and could confuse developers in the
main repository. Let's keep it clean.
2019-07-03 14:36:16 +10:00
Matt-Yorkley
9d86249bcb Merge pull request #3954 from openfoodfoundation/improve-database-yml
DRY and make database.yml more flexible
2019-07-02 21:43:49 +01:00
Kristina Lim
3e37c8a3f1 Change underscores in CSS classes to hyphens
These were triggering a warning from scss-lint.
2019-07-03 04:43:35 +08:00
Kristina Lim
691d7d735b Reduce padding between top bar menu items 2019-07-03 04:35:44 +08:00
Kristina Lim
6d1dd76590 Cap width of hub name in top bar and wrap 2019-07-03 04:30:06 +08:00
Kristina Lim
356e00bfbb Add space for tab bar in medium and below screens 2019-07-03 04:02:28 +08:00
Kristina Lim
5534109122 Undo setting of margin for home tagline 2019-07-03 04:02:22 +08:00
Janine Luk
ac8790ecb3 sticky header for mobile 2019-07-03 03:57:11 +08:00
Matt-Yorkley
2eb8121644 Update Docker config 2019-07-02 20:36:21 +01:00
Matt-Yorkley
b685e0d3a7 Add ENV var for db host 2019-07-02 20:34:16 +01:00
Matt-Yorkley
1dd3d86a2b Add prefixes to ENV vars 2019-07-02 20:34:16 +01:00
Pau Perez
7ee41902f2 DRY and make database.yml more flexible
This enables us to fix
https://github.com/openfoodfoundation/ofn-install/issues/387 and brings the
needed flexibility so things like
https://github.com/openfoodfoundation/openfoodnetwork/pull/3887 or any CI don't
require a custom version. That's what ENV vars are for!

For instance, I no longer need to mess with my LXC setup to connect to the DB.
I just need to have 2 env vars.
2019-07-02 20:34:16 +01:00
dependabot-preview[bot]
490ced4a92 Bump knapsack from 1.17.1 to 1.17.2
Bumps [knapsack](https://github.com/ArturT/knapsack) from 1.17.1 to 1.17.2.
- [Release notes](https://github.com/ArturT/knapsack/releases)
- [Changelog](https://github.com/ArturT/knapsack/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ArturT/knapsack/compare/v1.17.1...v1.17.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-02 19:21:44 +00:00
dependabot-preview[bot]
a682115fb1 Bump simplecov from 0.16.1 to 0.17.0
Bumps [simplecov](https://github.com/colszowka/simplecov) from 0.16.1 to 0.17.0.
- [Release notes](https://github.com/colszowka/simplecov/releases)
- [Changelog](https://github.com/colszowka/simplecov/blob/master/CHANGELOG.md)
- [Commits](https://github.com/colszowka/simplecov/compare/v0.16.1...v0.17.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-02 19:19:31 +00:00
Kristina Lim
653067f58c Omit text for top bar items with icon in large
This affects only top bar menu items for:

* Language
* Profile

This does not update the "Log in" menu item, because the currently
selected icon might not be self explanatory.
2019-07-03 01:49:36 +08:00
Kristina Lim
06ed9c838e Remove extra left padding from top bar menu items 2019-07-03 01:49:35 +08:00
Matt-Yorkley
726d87de6b Fix display bug in cart button on mobile menu 2019-07-02 16:47:22 +01:00
Matt-Yorkley
fbb97c3db8 Fix JS render-blocking in Darkswarm 2019-07-02 13:43:20 +01:00
Matt-Yorkley
cea8cbd924 Preload primary font to speed up page rendering 2019-07-02 13:23:03 +01:00
Maikel Linke
73372a58ef Remove unused and dangerous Exchange#eql? override
The `eql?` override has been added in very early commits but was
actually not used except in a test. It also caused performance problems
since each call to `eql?` would issue two database queries. A developer
would unknowingly trigger these when using `exchanges.uniq`. A mistake
that could have happened again in the future.

I moved the implementation to the test that was actually using it and
made a second test a bit more explicit.
2019-07-02 18:42:02 +10:00
Maikel Linke
287d6a926a Document Exchange 2019-07-02 18:42:02 +10:00
Maikel Linke
04b07a1ff5 Further optimise querying affected exchanges
The implementation queried the database for each incoming variant that
was changed. This rewrite combines ActiveRecord relations so that it
creates only one query. This saves another 5-10% of execution time when
updating enterprise fees on production instances.
2019-07-02 18:42:01 +10:00
Maikel Linke
0da7c93bc6 Collect affected exchanges more efficiently
When an incoming exchange of an order cycle changes, the ProductsCache
queries all affected outgoing exchanges to update them. It was creating
a big collection of exchanges with duplicates and then calling `uniq`.
That call was hitting a custom implementation of `eql?` which is very
inefficient. And since `Exchange.eql?` is ignoring the order cycle id,
it was probably filtering too many exchanges from the collection.

Fixed bug: If two order cycles sell exactly the same variants to the
same shop, the two outgoing exchanges are seen as equal. When the
variants change, ProductsCache would only update one of those two
exchanges, leaving one order cycle out of sync. This case is very rare.
It only happens if there is a shop with two active order cycles selling
exactly the same.

The new uniqueness test looks only at the attributes that are later used
to refresh the cache. I measured a page speed improvement from 90
seconds to 3 seconds (30 times faster).
2019-07-02 18:29:50 +10:00
Maikel Linke
bfe41d4cbc Extract method to simplify 2019-07-02 18:29:50 +10:00
Maikel Linke
3e6e0b73ee Style products cache
The `private` modifier doesn't affect class methods. Class methods have
to be declared as private separately. Also using more guard clauses,
brackets and linebreaks.
2019-07-02 18:29:49 +10:00
Maikel
592a468448 Merge pull request #3960 from mkllnk/test-spec-stability
Remove retries from previously flaky specs
2019-07-02 13:50:16 +10:00
Transifex-Openfoodnetwork
f09b1fc1a8 Updating translations for config/locales/en_ZA.yml 2019-07-02 01:13:09 +10:00
Ecksi
bdbd869b06 Modify English tool tip text in yml file
Modify GB English tool tip text in yml file

Modify US English tool tip text in yml file
2019-06-28 10:59:50 +10:00
Maikel
8b42bd205a Merge pull request #3977 from openfoodfoundation/transifex
Transifex
2019-06-27 09:29:09 +10:00
Transifex-Openfoodnetwork
6108a74fec Updating translations for config/locales/fr.yml 2019-06-27 00:47:45 +10:00
Luis Ramos
5ecab7a0c2 Merge pull request #3971 from Matt-Yorkley/basket_errors
Avoid `undefined method 'order'` errors when removing lineitems from basket
2019-06-26 15:33:26 +01:00
Luis Ramos
d8785bdaba Merge pull request #3932 from luisramos0/shpfront_message
Improve message in private shopfront when user is not logged in or not a customer
2019-06-26 15:31:06 +01:00
Luis Ramos
00841cb537 Merge pull request #3923 from luisramos0/prod_image_error
User friendly error when creating a product with an image in an unsupported format
2019-06-26 15:30:18 +01:00
luisramos0
61c8859da8 Fix problem in array concatenation in orders helper and cover it with specs 2019-06-26 14:17:41 +01:00
luisramos0
e33ce235c4 Hide invoice links in order edit page if invoices are disabled 2019-06-26 14:17:41 +01:00
luisramos0
ec2f99a467 Refactor OrderHelper.order_links: extract some logic from order_links to make it more simple and pass rubocop tests 2019-06-26 14:17:41 +01:00
luisramos0
67b5f08b07 Refactor OrderHelper.order_links: extract links object to separate methods 2019-06-26 14:17:41 +01:00
luisramos0
95170bacd5 Show print invoices button in orders list page only if invoices are enabled in the backoffice 2019-06-26 14:17:25 +01:00
Maikel
eebc49f27c Merge pull request #3887 from pacodelaluna/add-docker-configuration-for-dev-setup
Add docker configuration for quick local setup
2019-06-26 21:23:34 +10:00
luisramos0
8b0296eae6 Use a single query to get filter_schedules_by_enterprise_id 2019-06-26 11:38:03 +01:00
François Turbelin
b6120a9105 Fix docker-compose application yml file 2019-06-26 11:03:20 +02:00
Maikel Linke
5d3dbca9c3 Toggle features via env instead of initializer
A FeatureToggle could be switched via a class_eval in an initializer.
The initializer was installed via ofn-install. We want to get rid of
custom, untracked initializers. Here I'm changing the FeatureToggle
class to use environment variables instead.

This change needs to be followed up with a change in ofn-install to use
the new environment variable. It affects only Australian production.
2019-06-26 11:43:22 +10:00
Maikel Linke
5bbd63bcd8 Add spec for rescuing order saving shipment 2019-06-26 11:32:01 +10:00
Maikel Linke
980b4a86ab Move shipment rescue to its own method 2019-06-26 10:48:51 +10:00
Luis Ramos
118ed79070 Merge pull request #3904 from luisramos0/subs_stock
Fix ofn-on-hand directive and fix usage of variant.on_hand in subscriptions order factory
2019-06-25 20:25:06 +01:00
François Turbelin
623d1e0285 Add missing file 2019-06-25 20:05:55 +02:00
François Turbelin
2dcced8810 Put back application example file as it was 2019-06-25 17:59:37 +02:00
Matt-Yorkley
5100ad6b51 Improve #line_items_for logic and add more tests 2019-06-25 15:33:42 +01:00
luisramos0
7e2bead54d Make finalizedquantity optional in the ofn-on-hand directive and extract avaiable quantity to a separate method for clarity 2019-06-25 14:50:03 +01:00
luisramos0
2b6e6c62dd Simplify order_factory_spec by extracting copy pasted code to method 2019-06-25 14:50:03 +01:00
luisramos0
05a15d9441 Extract method to remove some copy pasted code in order_factory_spec 2019-06-25 14:50:03 +01:00
luisramos0
567196fe0e Fix line item verification of stock on the browser side by adding logic to handle completed orders with some reserved stock
The shopping/orders_spec is now validating this edge case by using all stock available in one of the line items
2019-06-25 14:50:03 +01:00
luisramos0
7bd32d4967 Fix usage of variant.on_hand in subscriptions order factory, we now take on_demand into account
This fixes a problem introduced in 12eab1bfa9 (diff-c3c4192f302cc77e9a8547012fe86ddb), since then variant.on_hand does not return infinity if variant is on_demand
2019-06-25 14:47:47 +01:00
Luis Ramos
9b6f1a5e11 Merge pull request #3958 from Matt-Yorkley/pi_encoding
Improve handling of invalid characters in uploaded CSV files
2019-06-25 14:44:32 +01:00
François Turbelin
84389d1392 Fix setup script with new application YAML file 2019-06-25 14:38:38 +02:00
François Turbelin
da3b467d47 Use https to fetch Postgres repo 2019-06-25 14:09:59 +02:00
François Turbelin
ceffae2efc Delete extra example file 2019-06-25 14:08:18 +02:00
Matt-Yorkley
f19a6f0dec Add tests for class_eval on Spree::Calculator private method #line_items_for 2019-06-25 12:19:16 +01:00
Matt-Yorkley
0a155da273 Avoid undefined method 'order' errors when removing lineitems from basket 2019-06-25 11:13:56 +01:00
François Turbelin
c0d02c8d42 Fix errors while relauching container 2019-06-25 12:05:26 +02:00
François Turbelin
e68d72c0dd Update DOCKER.md 2019-06-25 11:47:54 +02:00
Matt-Yorkley
034e8b180a Use let for CSV data 2019-06-25 10:24:53 +01:00
Matt-Yorkley
ead0e1c08d Store attributes list in constant 2019-06-25 10:20:59 +01:00
Matt-Yorkley
8dfb628d88 Add test for ignoring non-updatable description field in validations when updating 2019-06-25 10:19:05 +01:00
Matt-Yorkley
85b3d7dac5 Move attribute check to method 2019-06-25 10:19:05 +01:00
Matt-Yorkley
84040fd2a6 Allow import to proceed when updating a product and description is set 2019-06-25 10:19:05 +01:00
François Turbelin
5dcf456c90 Remove old Rake task for sample data 2019-06-25 11:18:48 +02:00
François Turbelin
79ec3d5a3f Remove extra copy on Docker file 2019-06-25 11:18:48 +02:00
François Turbelin
e893197c49 Use example files instead of extra Docker ones 2019-06-25 11:18:48 +02:00
Matt-Yorkley
60e67ae1a4 Run all setup steps on startup
It's a bit dirty, but it works :)
2019-06-25 11:18:48 +02:00
Matt-Yorkley
53a0f70aa0 Add default login details via ENV vars 2019-06-25 11:18:48 +02:00
Matt-Yorkley
64d6ae445b Change postgres repo from precise to bionic 2019-06-25 11:18:48 +02:00
Matt-Yorkley
5712f67673 Remove phantomjs from dependencies 2019-06-25 11:18:48 +02:00
François Turbelin
9c45444ea6 Clean database.docker.yml file 2019-06-25 11:18:48 +02:00
François Turbelin
4e41a73c4f Enhance Dockerfile 2019-06-25 11:18:48 +02:00
François Turbelin
75267268d7 Update Postgres to 9.5 2019-06-25 11:18:48 +02:00
François Turbelin
7455053879 Update DOCKER.md file 2019-06-25 11:18:48 +02:00
François Turbelin
c5addb8c1d Fix comment spacings, gloupsss 2019-06-25 11:18:48 +02:00
François Turbelin
e5d4b216ba Add DOCKER.md file as documentation 2019-06-25 11:18:48 +02:00
François Turbelin
b4fe44510b Tune up the Rake task 2019-06-25 11:18:48 +02:00
François Turbelin
9df5d78f27 Add a Rake task in order to setup dev env 2019-06-25 11:18:48 +02:00
François Turbelin
f9d72e10d5 Add Docker configuration 2019-06-25 11:18:48 +02:00
Maikel
723499332a Merge pull request #3006 from mkllnk/i18n-error-detection
Raise error on missing translation keys
2019-06-25 16:13:15 +10:00
Maikel Linke
6a06e0ac3b Raise error on missing translation keys 2019-06-25 15:06:56 +10:00
Luis Ramos
5600102729 Merge pull request #3876 from luisramos0/3804_insuf_stock
3804 Fix editing cart when variant on_demand but its on_hand value is zero or negative
2019-06-24 22:24:15 +01:00
luisramos0
a6ea975848 Fix editing cart when variant on_demand but on_hand is zero or negative 2019-06-24 22:07:46 +01:00
Luis Ramos
57917a498b Merge pull request #3946 from luisramos0/missing_translatiojns
Fix last missing translations covered by specs
2019-06-24 20:52:59 +01:00
Luis Ramos
b30da27e92 Merge pull request #3950 from openfoodfoundation/dependabot/bundler/stripe-4.19.0
Bump stripe from 4.18.1 to 4.19.0
2019-06-24 20:44:57 +01:00
Maikel Linke
1e1e88fe51 Rescue checkout on shipping id conflict
Helps to investigate https://github.com/openfoodfoundation/openfoodnetwork/issues/3924

A better solution would be to move the update of shipments out of the
after_save callback and deal with it in controllers. Unfortunately,
that's a big and tricky task.

Since this exception is causing a lot of pain for some Australian
farmers, I introduced more logging here to understand the problem
better. The issue was observed in OFN v1 and may disappear with v2. But
we don't know that and should monitor it.
2019-06-21 16:05:54 +10:00
Maikel
e4c3c1664a Merge pull request #3943 from jonleighton/issue-2112
Bring back ‘Shop for X products at:’ title
2019-06-21 15:06:21 +10:00
Maikel
5b0c8bbaef Merge pull request #3836 from Matt-Yorkley/fast_and_furious2
Improve /shops, /producers, and /groups performance
2019-06-21 15:02:19 +10:00
Maikel
71f396a44f Merge pull request #3896 from luisramos0/clear_unit_desc
Clear product.variants.unit_description if product.variant_unit is items
2019-06-21 15:00:06 +10:00
Maikel
eb162f6b29 Merge pull request #3934 from openfoodfoundation/dependabot/bundler/activerecord-import-1.0.2
Bump activerecord-import from 1.0.1 to 1.0.2
2019-06-21 14:59:03 +10:00
Maikel
5aea361d87 Merge pull request #3709 from luisramos0/2-0-prepare-4-rails-4
Start upgrade to Rails 4
2019-06-21 14:58:24 +10:00
Maikel
3721c017fa Merge pull request #3670 from luisramos0/2-0-without-spree-fe-assets
[Spree Upgrade] Remove dependency to spree frontend - routes and controllers
2019-06-21 14:57:03 +10:00
Maikel
12f0ed9955 Merge pull request #3940 from luisramos0/zones
Remove matching of shipping method zone to user address on checkout
2019-06-21 14:43:40 +10:00
Maikel
4c4881430c Merge pull request #3908 from kristinalim/fix/3843-unit_type_in_product_import
3877,3843 Improve handling of units and unit type in product import
2019-06-21 14:43:01 +10:00
luisramos0
bcc02f35e7 Add new preference to invoice settings: enable invoices 2019-06-19 13:29:30 +01:00
Matt-Yorkley
08b2b19d5e Improve handling of invalid characters in uploaded CSV files 2019-06-19 09:29:59 +01:00
Maikel Linke
cccd35fdf3 Remove retries from previously flaky specs
It's not acceptable to have flaky specs that only pass once in three
tries. Our specs might be more stable now that we use Chrome as test
browser. Otherwise we have to find out why these specs are not stable.
It might be an important bug that happens only sometimes.
2019-06-19 16:48:04 +10:00
Maikel Linke
d8ece7cd8b First stored credit card becomes default again
A user can store their credit card when checking out. Due to a bug in
https://github.com/openfoodfoundation/openfoodnetwork/pull/3840 it
didn't become the default card any more. This behaviour is now restored.
If there is not default card yet, a new card added during checkout
becomes the default card.
2019-06-19 15:43:38 +10:00
Maikel Linke
ee65d70eec Deal with empty payments sequence
The task was crashing when there were no payments in the query range.
2019-06-19 09:58:47 +10:00
Matt-Yorkley
ab1ed53507 Merge pull request #3955 from openfoodfoundation/remove-travis-leftover
No need to keep old and used Travis config file
2019-06-18 16:48:13 +01:00
luisramos0
160b535e2f Make weight calculator compute 0 for variants with unit different from weight 2019-06-18 15:21:13 +01:00
luisramos0
e8eeb3d5dc Further improve weight calculator code 2019-06-18 13:28:16 +01:00
luisramos0
2b3865855d Simplify shipping_method.include? method 2019-06-18 11:42:34 +01:00
luisramos0
1da18d3386 Fix enterprise model scopes by making ready_for_checkout return enterprises and not ids again and by making not_ready_for_checkout select the id field from the ready_for_checkout scope 2019-06-18 10:52:56 +01:00
luisramos0
b025df1798 Fix a few more rubocop issues 2019-06-18 10:52:56 +01:00
luisramos0
178924af5d Fix long lines in order_cycle model 2019-06-18 10:52:45 +01:00
luisramos0
bb1f7fde2f Remove unused routes related to taxons
t/products was already an old route 4 years ago and t/*id is not currently working in master
2019-06-18 10:49:20 +01:00
luisramos0
c61e7a1672 Remove unused routes
This fix is in spree 2.1 here: ba420fe70e
2019-06-18 10:49:20 +01:00
luisramos0
3c964933b1 Remove stub of a deleted method #deadcode 2019-06-18 10:49:20 +01:00
luisramos0
e7b625edcf Remove spree locale route
This route is not used, ofn code uses query param locale that is picked up in base controller set_locale
2019-06-18 10:49:20 +01:00
luisramos0
eab6cc563b Fix rubocop issues 2019-06-18 10:49:20 +01:00
luisramos0
8daf9b9247 Revert fix in previous commit (orders/populate route used in product import view) and adding a simple fix by setting the product import route to use in the form 2019-06-18 10:49:20 +01:00
luisramos0
5ba0f906a1 For some reason we need the orders populate route to make product import routes work 2019-06-18 10:49:20 +01:00
luisramos0
35c8236c21 Add missing datepicker/cal.gif to ofn assets 2019-06-18 10:49:20 +01:00
luisramos0
b397a8e661 Remove spree_frontend and spree_sample from ofn's gemfile
spree_frontend will only be removed from gemfile.lock when spree_auth_devise is removed from OFN
2019-06-18 10:49:20 +01:00
luisramos0
61def8f2e7 Convert match routes to get routes to be compatible with rails 4 2019-06-18 10:49:20 +01:00
luisramos0
4ff0bf8162 Change gemfile to depend on the different spree gems, not spree as a whole 2019-06-18 10:49:20 +01:00
luisramos0
02b9fca620 Remove unused spree checkout and spree cart routes 2019-06-18 10:49:19 +01:00
luisramos0
40f7d07e27 Remove unnecessary method from spree storecontroller and spree orderscontroller 2019-06-18 10:47:34 +01:00
luisramos0
c56486d7ae Remove unnecessary methods from spree checkoutcontroller 2019-06-18 10:47:34 +01:00
luisramos0
56db90f49e Remove unused checkout controller update action and order controller populate action
Additionally, remove routes of these actions as well as routes already defined in routes.rb (checkout and cart)
2019-06-18 10:47:34 +01:00
luisramos0
a8b4037885 Remove dependency to coupon code logic in checkoutcontroller, ofn doesnt have that feature 2019-06-18 10:47:34 +01:00
luisramos0
fc145d472d Add home controller to ofn codebase from spree frontend 2019-06-18 10:47:34 +01:00
luisramos0
5037cce6f5 Add all the code missing from checkout, order and store controllers to ofn controllers 2019-06-18 10:47:34 +01:00
luisramos0
c399491314 Move spree frontend routes to ofn and transform decorators with class_eval to controller classes 2019-06-18 10:47:34 +01:00
luisramos0
c15c5435ff Fix long lines in exchange model 2019-06-18 10:45:01 +01:00
luisramos0
0cdb49818d Remove distinct from enterprise.ready_for_checkout scope
Adapt use of enterprise scope not_ready_for_checkout to rails 4 by adding enterprises table alias to selected field id
2019-06-18 10:40:49 +01:00
luisramos0
9548f5c5f7 Adapt order_cycle scopes to rail 4 2019-06-18 10:40:49 +01:00
luisramos0
ba91abd20e Adapt exchanges.with_any_variant scope to rails 4 2019-06-18 10:40:49 +01:00
luisramos0
0d07bf2a3b Adapt enterprise.distributing_products scope to rails 4 2019-06-18 10:40:49 +01:00
luisramos0
07a6e62d09 Adapt query in product destroy process to rails 4 2019-06-18 10:40:49 +01:00
luisramos0
e9667ab289 Adapt product.managed_by scope to rails 4 2019-06-18 10:40:49 +01:00
Pau Perez
d003ba81e3 No need to keep old and used Travis config file
If we ever want to come back to Travis we just need to do a git revert.
Meanwhile, no need to care about it.
2019-06-18 11:12:14 +02:00
Luis Ramos
a783f4609a Merge pull request #3942 from jonleighton/exit-if-no-nodenv
Exit script/setup if node is not found
2019-06-17 22:10:44 +01:00
dependabot-preview[bot]
756b3ec73b Bump stripe from 4.18.1 to 4.19.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 4.18.1 to 4.19.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/v4.18.1...v4.19.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-17 19:19:17 +00:00
Luis Ramos
d9b47ad1b3 Merge pull request #3944 from openfoodfoundation/transifex
Transifex
2019-06-17 16:39:25 +01:00
luisramos0
0235a04530 Add missing translation key in user sessins controller 2019-06-17 15:48:52 +01:00
luisramos0
043abdef39 Add missing translations in the account confirmation process 2019-06-17 15:48:52 +01:00
luisramos0
b372e131a1 Add missing translation key in Spree.
This was fixed in spree 2.1, 7de7fcd502
2019-06-17 15:48:52 +01:00
luisramos0
642d3cbfbd Fix translation key namespace in subs order confirm email subject 2019-06-17 15:48:52 +01:00
Transifex-Openfoodnetwork
930de1b6a2 Updating translations for config/locales/en_ZA.yml 2019-06-17 20:33:27 +10:00
Pau Pérez Fabregat
e3db218e7c Merge pull request #3941 from luisramos0/enza
Add en_ZA.yml copied from en_GB.yml as requested by instance manager
2019-06-17 11:54:09 +02:00
Jon Leighton
fcff302d55 Bring back ‘Shop for X products at:’ title
Fixes #2112

It looks like this bug was accidentally introduced during a refactor in
e5ca494db8. The `bo-html` attribute was
replaced with `ng-html`, but it appears that it should actually have
used `ng-bind-html`
(https://docs.angularjs.org/api/ng/directive/ngBindHtml) because the
former is not a valid AngularJS directive.

It was also necessary to bubble up the `.cta-container` class in order to
get the appropriate styling on the title.
2019-06-17 15:43:15 +10:00
Jon Leighton
150310bf67 Exit script/setup if node is not found
This mirrors what the script already does if ruby is not found
2019-06-17 11:26:54 +10:00
luisramos0
926fc5ee43 Add en_ZA.yml copied from en_GB.yml as requested by instance manager 2019-06-16 20:43:20 +01:00
luisramos0
ccc7a43a06 Bypass validation of shipping methods zone on checkout 2019-06-15 21:11:51 +01:00
luisramos0
e4fcaa5992 Fix typo in package.rb 2019-06-15 20:45:57 +01:00
Luis Ramos
b1d4461c77 Merge pull request #3936 from luisramos0/factories_refactor
Extract factories to separate files and fix rubocop issues
2019-06-14 22:28:55 +01:00
Pau Pérez Fabregat
45c77196b3 Merge pull request #3935 from mkllnk/update-rubocop-style
Update rubocop style
2019-06-14 19:52:22 +02:00
luisramos0
13d41dc1aa Remove duplicate modify entry in factories 2019-06-14 13:59:24 +01:00
luisramos0
5ca382be42 Remove spec/factories.rb from rubocop exceptions, it doesnt look like a problem any longer 2019-06-14 13:55:47 +01:00
luisramos0
3259db69f0 Remove unnecessary code, this code as been accepted in spree code base and included in spree v1.2 2019-06-14 13:43:30 +01:00
luisramos0
6efb71d903 Fix more rubocop issues in spec/factories 2019-06-14 13:42:27 +01:00
Luis Ramos
91401446a5 Merge pull request #3915 from mkllnk/3844-permalink-conflicts
Consider deleted products when creating permalinks
2019-06-14 13:20:35 +01:00
luisramos0
59593c824a Fix rubocop issues in different factories 2019-06-14 13:10:53 +01:00
luisramos0
79cf03b124 Fix rubocop issues in spec/factories 2019-06-14 13:01:08 +01:00
luisramos0
a6b3c26bbe Extract users factories to separate file 2019-06-14 12:50:26 +01:00
luisramos0
8345765ada Extract tag rules factories to separate file 2019-06-14 12:49:17 +01:00
luisramos0
03fb33ba86 Extract variant factory modify to separate file 2019-06-14 12:48:04 +01:00
luisramos0
2c8ce6e4e5 Extract products factories to separate file 2019-06-14 12:45:55 +01:00
luisramos0
3e10c703bf Extract shipments factories to separate file 2019-06-14 12:43:07 +01:00
luisramos0
42f8b2efed Fix static file path in order_cycle_factory 2019-06-14 12:30:36 +01:00
luisramos0
bd493c392a Extract shipping_methods factories to separate file 2019-06-14 12:25:10 +01:00
luisramos0
dc701f55b3 Extract calculators factories to separate file 2019-06-14 12:23:32 +01:00
luisramos0
06e3328ce2 Extract orders factories to separate file 2019-06-14 12:17:24 +01:00
luisramos0
91fcb7c7c4 Extract enterprises factories to separate file 2019-06-14 12:12:45 +01:00
luisramos0
42f2e78b10 Extract subscriptions factories to separate file 2019-06-14 12:10:54 +01:00
luisramos0
0501859c23 Extract order_cycle factories to separate file 2019-06-14 12:10:27 +01:00
luisramos0
a7c970054c Add rescue in product controller create action to avoid server error and send appropriate error message to client when product image upload fails 2019-06-14 10:20:28 +01:00
luisramos0
c97925aa4a Improve message in private shopfront when closed or when user is not logged in 2019-06-14 10:13:33 +01:00
Maikel
5e89c54144 Merge pull request #3931 from openfoodfoundation/RachL-patch-1-3
Update README.md
2019-06-14 14:20:22 +10:00
Maikel
2307df980c Merge pull request #3930 from openfoodfoundation/transifex
Transifex
2019-06-14 14:19:13 +10:00
Maikel Linke
b5f3f98f87 Make BlockLength style apply to all files except todo list 2019-06-14 11:49:27 +10:00
Maikel Linke
ac79e44d9a Fix current rubocop violations 2019-06-14 11:40:09 +10:00
Maikel Linke
bf8a31abda Add rake task to report lost payments
In rare cases, payment records can get lost through database rollbacks.
This new rake task tries to find log entries for lost transactions and
reports them as CSV.
2019-06-14 11:10:31 +10:00
Transifex-Openfoodnetwork
f0977f3c39 Updating translations for config/locales/nb.yml 2019-06-14 08:08:37 +10:00
dependabot-preview[bot]
16ad94f3a8 Bump activerecord-import from 1.0.1 to 1.0.2
Bumps [activerecord-import](https://github.com/zdennis/activerecord-import) from 1.0.1 to 1.0.2.
- [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.1...v1.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-13 19:23:40 +00:00
luisramos0
6223a738a7 Fix rubocop issues in collapsible.css 2019-06-13 19:32:33 +01:00
luisramos0
a370216f54 Change default translation in the registration introduction so that it looks better when collapsed 2019-06-13 19:28:31 +01:00
luisramos0
473fb45132 Remove an extra break line to remove html space and make sure alignment is correct 2019-06-13 19:28:10 +01:00
luisramos0
ae0563a58f Merge branch 'master' into 1766-registration-scroll 2019-06-13 19:10:05 +01:00
Luis Ramos
2b593a59f5 Merge pull request #3900 from luisramos0/subs_trans
Missing translations in Subscriptions
2019-06-13 18:51:20 +01:00
Rachel Arnould
d3cb106ae4 Update README.md
In order to benefit from a free unlimited account at Browser stack, they asked us to 
*Give us a shoutout on your GitHub project page. Post an hyperlink and a line about how you use BrowserStack.*
2019-06-13 18:58:58 +02:00
Luis Ramos
ddfd14ebb3 Merge pull request #3905 from openfoodfoundation/dependabot/bundler/i18n-js-3.3.0
Bump i18n-js from 3.2.2 to 3.3.0
2019-06-13 17:33:50 +01:00
luisramos0
1db220e1e0 Remove unnecessary referer setting from products controller spec 2019-06-13 17:22:09 +01:00
Luis Ramos
29bc961e8a Merge pull request #3890 from luisramos0/transl_prod_page
Add missing translation keys to the create product page
2019-06-13 17:13:40 +01:00
Transifex-Openfoodnetwork
216e181c6e Updating translations for config/locales/en_GB.yml 2019-06-14 01:53:18 +10:00
Transifex-Openfoodnetwork
b65b94b6f9 Updating translations for config/locales/en_GB.yml 2019-06-14 01:50:11 +10:00
Luis Ramos
85ee1e7806 Merge pull request #3889 from luisramos0/tag_rules_transl
Fix missing translations in tag rules management page
2019-06-13 16:15:49 +01:00
Luis Ramos
7d24bcf868 Merge pull request #3798 from m-budryte/order_cycles_add_fee_remove_link
the translations for Remove in the exchange forms added
2019-06-13 16:15:28 +01:00
Luis Ramos
1df1ba9403 Merge pull request #3888 from luisramos0/translations
Add translation keys to actions in the order payments list page
2019-06-13 15:36:43 +01:00
Luis Ramos
e15ccdbd74 Merge pull request #3840 from mkllnk/3727-default-credit-cards
Make only reusable credit cards the default card
2019-06-13 14:13:32 +01:00
Luis Ramos
1a2703f630 Merge pull request #3886 from luisramos0/fees_translations
Make a few more things translatable in the Enterprise Fees management page
2019-06-13 14:12:16 +01:00
Luis Ramos
09a5426095 Merge pull request #3880 from kristinalim/fix/3792-optimize_order_cycle_variant_updates
3792 Optimize saving Order Cycle changes
2019-06-13 12:33:22 +01:00
Luis Ramos
bb7a2d7a5e Merge pull request #3252 from mllocs/fix/navbar-right-items-styles
Top navbar redesign and cleanup
2019-06-13 12:04:20 +01:00
Pau Pérez Fabregat
080689ccfa Merge pull request #3917 from luisramos0/subs_visible
Make subs radio button visible to all managers
2019-06-12 16:42:31 +02:00
Matt-Yorkley
41a36bb704 Update all locales with the latest Transifex translations 2019-06-12 13:54:41 +01:00
Luis Ramos
7cae7ca520 Merge pull request #3897 from openfoodfoundation/dependabot/bundler/fuubar-2.4.0
Bump fuubar from 2.3.2 to 2.4.0
2019-06-12 13:29:04 +01:00
Luis Ramos
05856c44dd Merge pull request #3906 from openfoodfoundation/dependabot/bundler/webmock-3.6.0
Bump webmock from 3.5.1 to 3.6.0
2019-06-12 13:28:36 +01:00
Luis Ramos
b02bf3b83c Merge pull request #3872 from luisramos0/rails4_where_scope
[Rails 4] Change all model scopes without a callable object to use a proc
2019-06-12 12:53:10 +01:00
Matt-Yorkley
48ebfbee90 Merge pull request #3902 from openfoodfoundation/transifex
Transifex
2019-06-12 10:02:40 +01:00
Matt-Yorkley
785595a951 Reduce initial queries on shop page by ~95% 2019-06-12 09:47:01 +01:00
Matt-Yorkley
0aa8b1a30e Make shop hidden ams injection consistent with other uses 2019-06-12 09:47:01 +01:00
Matt-Yorkley
874fb884b8 Refactor Angular controllers further 2019-06-12 09:47:01 +01:00
Matt-Yorkley
a91ae8947b Only query visible enterprises 2019-06-12 09:47:01 +01:00
Matt-Yorkley
11e83af0b6 Remove duplication of enterprise angular controllers
We can re-use the enterprise and producers controllers here in their respective groups tabs, no need for a third controller
2019-06-12 09:47:01 +01:00
Matt-Yorkley
9703d848ef Improve syntax in injection_helper 2019-06-12 09:47:01 +01:00
Matt-Yorkley
4155b17633 Remove tests that reference removed code 2019-06-12 09:47:01 +01:00
Matt-Yorkley
d5bd058754 Fix groups show page
It can definitely be cleaned up more in the future, but this should get us around a 90% reduction in page load times.
2019-06-12 09:47:01 +01:00
Matt-Yorkley
4ec46c2db6 Fix groups index page 2019-06-12 09:47:01 +01:00
Matt-Yorkley
aca1f92060 Adapt specs to new loading methods 2019-06-12 09:47:01 +01:00
Matt-Yorkley
1b8dfaf049 Fix HashNavigation reload bug 2019-06-12 09:47:01 +01:00
Matt-Yorkley
ae8f1a92e8 Remove "profiles" from /shops 2019-06-12 09:47:01 +01:00
Matt-Yorkley
698d3672a6 List only current taxons for active enterprises 2019-06-12 09:47:01 +01:00
Matt-Yorkley
ed97400a23 Improve producers performance 2019-06-12 09:47:01 +01:00
Matt-Yorkley
45d65baf8e Improve shops performance 2019-06-12 09:47:01 +01:00
Matt-Yorkley
e329b4bfb0 Improve queries for serializers 2019-06-12 09:47:01 +01:00
Pau Pérez Fabregat
99b82272cc Merge pull request #3883 from Matt-Yorkley/order_cycles_performance
Admin order cycles performance
2019-06-12 10:38:54 +02:00
Pau Pérez Fabregat
fd95ae7e41 Merge pull request #3847 from Matt-Yorkley/api_access
Allow unauthenticated access to OFN API endpoints
2019-06-12 09:45:11 +02:00
Maikel Linke
76d77ceb51 Update and generalise database mirror script
The old script was specfic to the use in Australia and out of date. The
new version isn't perfect but works well for me.
2019-06-12 10:19:56 +10:00
luisramos0
f23094df09 Fix file name of js unit test files in admin/order_cycles/controllers 2019-06-11 21:28:55 +01:00
luisramos0
9c539da811 Fix rubocop issue in schedules_controller.collection by extracting method 2019-06-11 21:28:55 +01:00
luisramos0
6cf705ea55 In the order cycle pages (both create and edit, both simple and normal), add OC coordinator to schedules request to the server and make the controller filter schedules of order cycles coordinated by that enterprise id. 2019-06-11 21:28:52 +01:00
Maikel Linke
d1901cbea4 Allow class_eval to have more than 25 lines 2019-06-11 18:01:41 +01:00
Maikel Linke
5c72c35060 Use better credit card factory for subs specs
The specs for subscriptions were creating simple one-time-use credit
cards. They should not be used for subscriptions. After this was fixed
in previous commits, these integration tests failed. Now we use a new
factory that mimics stored credit cards that can be used for
subscriptions.
2019-06-11 18:01:41 +01:00
Maikel Linke
b3b8cb778f Make only reusable credit cards the default card
https://github.com/openfoodfoundation/openfoodnetwork/issues/3727

When a user didn't have a default credit card and then checked out with
a credit card it became the default even when the user didn't intend to
store it. That lead to subscriptions trying to charge a one-time card
which fails.
2019-06-11 18:01:41 +01:00
luisramos0
d8a7f60f40 Make subs radio button visible to all managers 2019-06-11 17:21:13 +01:00
Maikel Linke
a10bb5acbd Consider deleted products when creating permalinks
https://github.com/openfoodfoundation/openfoodnetwork/issues/3844

Spree's implementation and our implementation to create a unique
permalink failed to notice conflicts with soft-deleted products. This
patch looks at deleted products as well.
2019-06-11 18:20:41 +10:00
Kristina Lim
cf11ef8ba2 Ignore parameter list length for ProductImport::EntryValidator
This can be done in a separate PR. More tests might be needed when
extracting to a class.
2019-06-10 04:20:04 +08:00
Kristina Lim
8c69ee67b8 Refactor code for validating variant in reference to existing product 2019-06-10 04:20:04 +08:00
Kristina Lim
70614de955 Require product import rows to match unit of preceding rows 2019-06-10 04:20:03 +08:00
Kristina Lim
5d282f7e9f Update code layout in ProductImporter method 2019-06-10 04:20:03 +08:00
Kristina Lim
73b388da87 Simplify product import all_entries method 2019-06-10 04:20:03 +08:00
Kristina Lim
38519b2bae Simplify building of product import entries for range 2019-06-10 04:19:50 +08:00
Kristina Lim
37101a6b64 Extract build_entries_from_rows for product import 2019-06-09 23:38:36 +08:00
dependabot-preview[bot]
e686c61962 Bump webmock from 3.5.1 to 3.6.0
Bumps [webmock](https://github.com/bblimke/webmock) from 3.5.1 to 3.6.0.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.5.1...v3.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-06 19:21:33 +00:00
dependabot-preview[bot]
93811a6d8f Bump i18n-js from 3.2.2 to 3.3.0
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.2.2 to 3.3.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/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-06-06 19:19:50 +00:00
Luis Ramos
568e3003ba Merge pull request #3882 from kristinalim/feature/3408-enable_enterprise_fee_summary_for_non_superadmin
3408 Remove feature flag for Enterprise Fee Summary
2019-06-06 16:28:36 +01:00
Transifex-Openfoodnetwork
ec898a8127 Updating translations for config/locales/en_US.yml 2019-06-06 23:03:05 +10:00
Transifex-Openfoodnetwork
ddab3ba074 Updating translations for config/locales/en_US.yml 2019-06-06 22:59:56 +10:00
Luis Ramos
e2b506294d Merge pull request #3870 from openfoodfoundation/dependabot/bundler/jwt-2.2.1
Bump jwt from 2.1.0 to 2.2.1
2019-06-05 20:48:38 +01:00
Luis Ramos
78f0164f5b Merge pull request #3881 from openfoodfoundation/dependabot/bundler/stripe-4.18.1
Bump stripe from 4.11.0 to 4.18.1
2019-06-05 20:48:12 +01:00
Transifex-Openfoodnetwork
2b9ff963da Updating translations for config/locales/en_GB.yml 2019-06-06 05:03:44 +10:00
Transifex-Openfoodnetwork
3100781f27 Updating translations for config/locales/en_GB.yml 2019-06-06 05:00:36 +10:00
Pau Pérez Fabregat
5028c9d283 Merge pull request #3899 from openfoodfoundation/transifex
Transifex
2019-06-05 12:28:12 +02:00
luisramos0
ff2901a9d1 Add address suburb translation key to fix edit subscription address page
Keeping these in the root of the translations file so that they can be used in other places later
2019-06-04 20:59:45 +01:00
luisramos0
9944f3e1e6 Make translations of tooltips in subscriptions list page work again 2019-06-04 20:59:45 +01:00
luisramos0
cfcf73b6a1 Make save and saving messages translatable in subscriptions items panel 2019-06-04 20:59:45 +01:00
luisramos0
eb42e81afc Make some text entries translatable in create subscription pages: title in step 1 details and 4 review and date placeholders in step 1 details 2019-06-04 20:59:45 +01:00
luisramos0
64af81a4a2 Make search_by_email text translatable in subscriptions list page 2019-06-04 20:59:42 +01:00
Transifex-Openfoodnetwork
215f6e92f2 Updating translations for config/locales/fr.yml 2019-06-05 02:44:40 +10:00
Luis Ramos
fd64e53f61 Merge pull request #3841 from luisramos0/2-0-fix-ship-methods-translations
Move shipping methods translations to lazy lookups
2019-06-04 15:15:31 +01:00
Luis Ramos
4dcf309910 Merge pull request #3884 from luisramos0/3879_ship_cats
Remove matching of product shipping category with shipping method's category on checkout
2019-06-03 22:53:13 +01:00
dependabot-preview[bot]
1b92b126c8 Bump fuubar from 2.3.2 to 2.4.0
Bumps fuubar from 2.3.2 to 2.4.0.
2019-06-03 19:17:54 +00:00
Matt-Yorkley
98d1cbec8c Update all locales with the latest Transifex translations 2019-06-02 18:06:51 +01:00
Kristina Lim
2c52c1a6fc Remove unused argument from Spree::Ability method 2019-06-02 01:30:46 +08:00
luisramos0
1a4e83d633 Change products controller to clear variants unit description if variant_unit is items 2019-06-01 16:56:17 +01:00
luisramos0
4551149532 Improve code of weight calculator 2019-05-31 19:55:39 +01:00
luisramos0
82955b9fe5 Make weight calculator use line_item.final_weight_volume rather than variant.weight for cases where the final weight is set manually in the BOM 2019-05-31 19:55:17 +01:00
luisramos0
9078a1edaa Add missing translation keys to the create product page: fields names displayed in error messages 2019-05-30 23:50:51 +01:00
luisramos0
32c107ab5a move translation to use relative path so that the new translation key is used 2019-05-30 23:26:23 +01:00
Masha
fbf52dd1f9 removed translations that are not required, left exchange_form.remove key but reference a global remove in the table 2019-05-30 23:08:05 +01:00
Masha
436a2ba0a2 went much shorted way 2019-05-30 23:08:05 +01:00
Masha
412fffba1d the translations for Remove in the exchange forms added 2019-05-30 23:08:05 +01:00
Pau Pérez Fabregat
ada640b159 Merge pull request #3850 from lin-d-hop/update-readme
Update outdated things on the README
2019-05-30 23:56:36 +02:00
luisramos0
5024da4123 Make tag rules type descriptions in the management page translatable 2019-05-30 20:39:58 +01:00
luisramos0
6620243603 Make the submit button on the add tag rule dialog translatable 2019-05-30 20:22:02 +01:00
luisramos0
48361b146c Add translation keys to actions in the order payments list page 2019-05-30 20:13:17 +01:00
luisramos0
1d4529092f Make fee type options in enterprise fees page translatable 2019-05-30 00:46:20 +01:00
luisramos0
6e08310744 Make the fields in the column calculator values in the enterprise fees page translatable for all fields of all current calculators 2019-05-29 21:57:03 +01:00
luisramos0
5719455731 Make enterprise fees name placeholder translatable 2019-05-29 21:33:30 +01:00
luisramos0
c5a95dee79 Remove matching of product shipping category with shipping method's category to allow users to checkout products with categories not supported by the shipping methods.
See issue #3884 for more details.
2019-05-29 14:43:19 +01:00
Matt-Yorkley
563f9a4f5f Remove another N+1 2019-05-29 12:28:56 +01:00
Luis Ramos
187fbd788b Merge pull request #3873 from Matt-Yorkley/branding
Use OFN logo in admin area
2019-05-29 10:12:48 +01:00
Matt-Yorkley
2dd4c1ccaf Cut OC edit #for_order_cycle queries in half 2019-05-29 10:01:46 +01:00
Matt-Yorkley
8733036fb0 Remove 2 N+1s, reduce queries in #visible action ~90% 2019-05-29 10:01:44 +01:00
Matt-Yorkley
c0a40c616b Use devise's check_authorization and skip_authorization_check 2019-05-28 22:02:18 +01:00
Luis Ramos
88f109da67 Merge pull request #3868 from luisramos0/delete-en-us
Remove unused en-US locale file
2019-05-28 20:06:07 +01:00
Kristina Lim
ecea0600b6 Remove feature flag for Enterprise Fee Summary 2019-05-29 02:50:41 +08:00
Kristina Lim
93850d4317 Merge pull request #3846 from luisramos0/transpec_features
Transpec spec/features
2019-05-29 01:17:30 +08:00
luisramos0
79f16e0ea3 Run transpec in spec/features/consumer/external_services_spec.rb 2019-05-28 17:04:06 +01:00
luisramos0
7397ab4fd8 Run transpec in spec/features/admin/payment_method_spec.rb 2019-05-28 17:04:06 +01:00
luisramos0
ec7e92202b Run transpec in spec/features/admin/enterprise_user_spec.rb and spec/features/admin/overview_spec.rb 2019-05-28 17:04:06 +01:00
luisramos0
9a21ca38e1 Run transpec in a few more spec/features/admin specs 2019-05-28 17:04:06 +01:00
luisramos0
d2f62f86a9 Run transpec in a few spec/features/admin specs 2019-05-28 16:59:51 +01:00
luisramos0
80537e7e01 Run transpec in spec/features/admin/image_settings_spec.rb 2019-05-28 16:57:11 +01:00
luisramos0
7f43a66fb3 Run transpec in spec/features/admin/adjustments_spec 2019-05-28 16:57:11 +01:00
luisramos0
f2bfb9bedb Fix rubocop issues in adjustment_decorator, line_item_decorator and product_decorator 2019-05-28 16:50:59 +01:00
luisramos0
ced6264846 Fix rubocop issues in enterprise model 2019-05-28 16:30:50 +01:00
luisramos0
f58d9ec790 Fix rubocop issues in exchange model 2019-05-28 16:10:40 +01:00
luisramos0
06c0b1375b Fix rubocop issues in enterprise_relationship model 2019-05-28 16:07:10 +01:00
luisramos0
ffbd79d3dd Change all model scopes without a callable object to use a proc 2019-05-28 15:55:13 +01:00
Kristina Lim
99f163d294 Make code style changes for spec file 2019-05-28 21:32:25 +08:00
Kristina Lim
75fdfb3c6a Remove some usage of guard clauses for OC update 2019-05-28 21:32:25 +08:00
Kristina Lim
56a2347ea0 Extract removal of unauthorized OC exchange attributes to method 2019-05-28 21:29:20 +08:00
Kristina Lim
ea8d189d6c Bulk update OC variant changes in OC form 2019-05-28 21:27:43 +08:00
Kristina Lim
bc6f14105e Require spec_helper.rb in spec file for OC form applicator 2019-05-28 21:26:33 +08:00
Kristina Lim
9def777d02 Install activerecord-import gem 2019-05-28 21:26:32 +08:00
dependabot-preview[bot]
0b6eaa8d02 Bump jwt from 2.1.0 to 2.2.1
Bumps [jwt](https://github.com/jwt/ruby-jwt) from 2.1.0 to 2.2.1.
- [Release notes](https://github.com/jwt/ruby-jwt/releases)
- [Changelog](https://github.com/jwt/ruby-jwt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jwt/ruby-jwt/compare/v2.1.0...v2.2.1)
2019-05-28 13:10:44 +00:00
dependabot-preview[bot]
df2553eac5 Bump stripe from 4.11.0 to 4.18.1
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 4.11.0 to 4.18.1.
- [Release notes](https://github.com/stripe/stripe-ruby/releases)
- [Changelog](https://github.com/stripe/stripe-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stripe/stripe-ruby/compare/v4.11.0...v4.18.1)
2019-05-28 13:10:43 +00:00
Luis Ramos
6a0925539f Merge pull request #3842 from luisramos0/rubocop-line-length
Fix a few rubocop warnings manually and run rubocop autocorrect
2019-05-28 14:08:16 +01:00
luisramos0
d10f9a1a43 Rebuilding rubocop_todo auto after all the fixes 2019-05-28 12:57:29 +01:00
luisramos0
07854cf372 Fix a few problems introduced by rubocop auto correct 2019-05-28 12:57:29 +01:00
luisramos0
86b0d71c7e Result of rubocop auto-correct and rebuilding rubocop_manual_todo 2019-05-28 12:57:29 +01:00
luisramos0
4a67acf954 Removing a few rubocop warnings 2019-05-28 12:55:17 +01:00
Luis Ramos
31098218d2 Merge pull request #3856 from Drumstickx/master
Fixed sql injection vulnerability in users_and_enterprises_report.
2019-05-28 10:32:27 +01:00
Luis Ramos
9ccf502365 Merge pull request #3797 from lin-d-hop/variant-master-price
Remove non-functional Price field from Edit Product screen
2019-05-28 10:30:05 +01:00
Luis Ramos
de5eeeb6f2 Merge pull request #3812 from openfoodfoundation/dependabot/bundler/unicorn-5.5.1
Bump unicorn from 5.5.0 to 5.5.1
2019-05-27 13:06:58 +01:00
dependabot-preview[bot]
09d4ab9f0d Bump unicorn from 5.5.0 to 5.5.1
Bumps [unicorn](https://bogomips.org/unicorn/) from 5.5.0 to 5.5.1.

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-27 09:22:42 +00:00
Pau Pérez Fabregat
2d3bd7f471 Merge pull request #3828 from eelcodevlieger/webdrivers
Webdrivers
2019-05-27 11:20:04 +02:00
Pau Pérez Fabregat
018b019f10 Merge pull request #3865 from mkllnk/438-aus-locale
Add Australian English locale
2019-05-27 11:11:04 +02:00
Pau Pérez Fabregat
6aa039876d Merge pull request #3809 from openfoodfoundation/dependabot/bundler/jquery-rails-3.0.4
Bump jquery-rails from 3.0.0 to 3.0.4
2019-05-27 10:40:44 +02:00
Pau Pérez Fabregat
6b08e2ab2c Merge pull request #3864 from openfoodfoundation/disable-harmful-rake-tasks-in-production
Disable harmful rake tasks in production
2019-05-27 10:36:07 +02:00
Matt-Yorkley
099914be40 Use OFN logo in admin area 2019-05-27 02:20:04 +01:00
luisramos0
4143c50b1f Move joyride translations to the correct path 2019-05-24 23:54:00 +01:00
luisramos0
dc32d282a6 Fix some rubocop issues in menu css file 2019-05-24 23:54:00 +01:00
luisramos0
2654db7c82 Add new menu style as per design 2019-05-24 23:53:56 +01:00
dependabot-preview[bot]
1a9ad4fcbc Bump jquery-rails from 3.0.0 to 3.0.4
Bumps [jquery-rails](https://github.com/rails/jquery-rails) from 3.0.0 to 3.0.4.
- [Release notes](https://github.com/rails/jquery-rails/releases)
- [Changelog](https://github.com/rails/jquery-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/jquery-rails/compare/v3.0.0...v3.0.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-24 20:40:14 +00:00
Luis Ramos
655c54f367 Merge pull request #3835 from openfoodfoundation/dependabot/bundler/i18n-js-3.2.2
Bump i18n-js from 3.2.1 to 3.2.2
2019-05-24 21:38:16 +01:00
luisramos0
0dc0776705 Separate mobile menu cart code from large menu cart code 2019-05-24 15:17:41 +01:00
luisramos0
ec9d50c824 Add new cart icon and extract cart joyride from cart haml file 2019-05-24 15:16:36 +01:00
luisramos0
60c08347a5 Extract language selector from large menu haml file, add language name and clean up the code that generates the shopping@ label 2019-05-24 15:12:31 +01:00
Luis Ramos
b6a456cb67 Merge pull request #3863 from mkllnk/quiet-cron
Make inserting delayed jobs from cron quiet
2019-05-24 14:50:19 +01:00
Luis Ramos
db0c874622 Merge pull request #3669 from luisramos0/2-0-without-spree-fe-views
[Spree Upgrade] Remove dependency to spree frontend - views and assets
2019-05-24 14:37:34 +01:00
luisramos0
97f09c672a Remove unused en-US locale file 2019-05-24 10:11:44 +01:00
Pau Pérez Fabregat
1d72d461df Merge pull request #3866 from openfoodfoundation/transifex
Transifex
2019-05-24 10:10:10 +02:00
luisramos0
5858a83239 Simplify spec_helper config to make file downloads work in headless chrome 2019-05-23 20:31:52 +01:00
Luis Ramos
4a321f200f Merge pull request #3783 from kristinalim/fix/3782-missing_translation
3782 Fix missing translation in subscription update modal
2019-05-23 18:45:20 +01:00
Luis Ramos
ae1d260729 Merge pull request #3810 from openfoodfoundation/dependabot/bundler/deface-1.0.2
Bump deface from 1.0.0 to 1.0.2
2019-05-23 18:42:51 +01:00
luisramos0
15360971b0 Move signed_* files to views/shared/menu and add new logged in and profile icons 2019-05-23 15:58:02 +01:00
Luis Ramos
12282ad906 Merge pull request #3794 from m-budryte/replace_&_with_OR
& replaced by OR when multiple property filters are selected
2019-05-23 14:35:51 +01:00
Transifex-Openfoodnetwork
a4d59b72b0 Updating translations for config/locales/nb.yml 2019-05-23 20:35:12 +10:00
Transifex-Openfoodnetwork
6b2e10860e Updating translations for config/locales/nb.yml 2019-05-23 20:32:02 +10:00
Maikel Linke
c93e51b73e Update source locale description
The Australian instance has been using the source locale. But now we
added an Australian English locale via Transifex.

The I18n wiki page moved as well.
2019-05-23 20:14:59 +10:00
Transifex-Openfoodnetwork
3c162984f1 Updating translations for config/locales/en_AU.yml 2019-05-23 19:57:49 +10:00
Transifex-Openfoodnetwork
207fe7b64e Updating translations for config/locales/en_AU.yml 2019-05-23 19:54:40 +10:00
Pau Pérez Fabregat
7c9299bdb5 Merge pull request #3852 from openfoodfoundation/transifex
Transifex
2019-05-22 16:35:27 +02:00
Pau Perez
4c19c1a0a5 Disable harmful rake tasks in production
No need to check whether you are running that `bundle exec rake db:reset`
command on staging or production anymore 😱.

As described in https://github.com/adamcooke/rails-safe-tasks

> This gem provides an extra layer of safety between you and deleting all your
> production data by accident.

> It restricts the use of various rake tasks (including db:drop, db:reset etc...)
> when you are running your application in a production environment.
2019-05-22 15:30:43 +02:00
Maikel Linke
38e9976ce4 Make inserting delayed jobs from cron quiet
`config/schedule.rb` defines entries for cron jobs. Every five minutes
it insert several delayed jobs via `script/enqueue`. A recent upgrade of
Postgresql (a year or two ago) made that script noisy. Every time we
insert a delayed job with that script it outputs:

  INSERT 0 1

Standard output like this is seen as error message by cron an forwarded
to the unix user's local mailbox in `/var/mail/openfoodnetwork`. This
file grows over time and accumulates tens of thousands of error
messages, hiding any important failures.

This patch makes inserting delayed jobs quiet. A failure is still
reported.
2019-05-22 03:36:07 +10:00
Matt-Yorkley
74d7db9fba Allow unauthenticated access to enterprise API endpoints 2019-05-21 17:13:00 +01:00
Drumstickx
414ae58cbd Rubocop changes. 2019-05-21 16:48:02 +02:00
Drumstickx
c162654757 Reduce code duplication. 2019-05-21 16:46:40 +02:00
Drumstickx
29f68ed5d8 Rubocop changes. 2019-05-21 14:51:52 +02:00
luisramos0
115b5dadef Remove more dead code from usersregistration (signup calls are always ajax) 2019-05-21 12:39:29 +02:00
luisramos0
d9438cb082 Add spinner.gif from spree_frontend, this makes ofn completely independent of spree_frontend assets 2019-05-21 12:39:29 +02:00
luisramos0
ffd883e84d Remove dead code from usersregistration (signup calls are always ajax) and remove application.html.erb (spree frontend default layout) because this usersregistration was the last bit of OFN code to use it 2019-05-21 12:39:29 +02:00
luisramos0
25fd6f2e78 Move empty check template from spree_frontend, it is required from the checkout page
This makes ofn code completely independent from spree_frontend views
2019-05-21 12:39:29 +02:00
luisramos0
a0c56f31c7 Move Google Analytics script from spree_frontend to ofn: this is one of the very last dependencies to spree_frontend code 2019-05-21 12:39:29 +02:00
Transifex-Openfoodnetwork
85c41c1f12 Updating translations for config/locales/pt.yml 2019-05-21 20:18:30 +10:00
Transifex-Openfoodnetwork
d252916858 Updating translations for config/locales/pt.yml 2019-05-21 20:15:53 +10:00
Transifex-Openfoodnetwork
09a9b64d28 Updating translations for config/locales/pt.yml 2019-05-21 20:15:20 +10:00
Transifex-Openfoodnetwork
31c1c82310 Updating translations for config/locales/fr.yml 2019-05-21 20:10:37 +10:00
Transifex-Openfoodnetwork
a66c2314ef Updating translations for config/locales/fr.yml 2019-05-21 20:07:31 +10:00
Drumstickx
2f83d02168 Reduce code duplication. 2019-05-19 22:36:55 +02:00
Drumstickx
0e6a576e33 Fix user_id IS NOT NULL check. 2019-05-19 22:05:34 +02:00
Drumstickx
4204943a7c Styling. 2019-05-19 22:04:44 +02:00
Drumstickx
1246c3b6b9 Styling. 2019-05-19 18:57:09 +02:00
Drumstickx
ec2db4dd2a Fixed sql injection vulnerability in users_and_enterprises_report. 2019-05-19 17:58:57 +02:00
Transifex-Openfoodnetwork
ec343fda3b Updating translations for config/locales/en_GB.yml 2019-05-15 05:58:11 +10:00
Transifex-Openfoodnetwork
ff3e8c29a7 Updating translations for config/locales/en_GB.yml 2019-05-15 05:55:01 +10:00
lin-d-hop
f19244cebd Update outdated things on the README 2019-05-14 15:25:05 +01:00
Pau Pérez Fabregat
59d4e3d9e2 Merge pull request #3848 from luisramos0/pr_3813
Get PR 3813 to master (it was only on the hotfix branch 2-0-1)
2019-05-13 19:15:24 +02:00
luisramos0
189865fd80 Make stock locations backorderable_default false.
This is required because when the default stock location is created, the backorderable_default column doesnt exist and when this column is created, the initial default is true. This is why we need to force it to false here. This column is the default value for on_demand which must be false.
2019-05-10 22:00:24 +01:00
Pau Pérez Fabregat
7e9a149c8d Merge pull request #3837 from luisramos0/transpec
transpec!!!
2019-05-10 14:59:41 +02:00
Pau Pérez Fabregat
f113ac61d7 Merge pull request #3839 from coopdevs/report-cache-diff-in-new-tab
Report cache diff in new tab
2019-05-10 14:38:33 +02:00
Pau Perez
9a98a7c974 Report cache diff to Bugsnag in a new tab
This will allow us to see the difference between the cache entry and the
actual shopfront. Otherwise, there is no way to see what wasn't
refreshed in the cache.
2019-05-10 13:13:20 +02:00
luisramos0
07e9043e34 Move shipping methods translations to lazy lookups 2019-05-10 11:44:49 +01:00
Luis Ramos
f844ff275b Merge pull request #3799 from idanceinbetween/product-description-field-text-formatting-3757
added buttons to form and updated sanitizer to allow extra formatting
2019-05-10 10:48:55 +01:00
Maikel
50ca1f7173 Merge pull request #3824 from mkllnk/aus-content-updates
Aus content updates
2019-05-10 10:40:09 +10:00
luisramos0
6996353d05 Run transpec for spec/controllers 2019-05-10 01:20:40 +01:00
luisramos0
df459a21a4 Run transpec for spec/lib 2019-05-10 01:08:34 +01:00
luisramos0
e7c6892ab8 Run transpec for spec/mailers 2019-05-09 23:47:32 +01:00
luisramos0
2c6ca7e169 Run transpec for spec/helpers 2019-05-09 23:43:51 +01:00
luisramos0
0075ffbc02 Run transpec for spec/support 2019-05-09 23:39:30 +01:00
luisramos0
9cfba8ad19 Revert transpec in ability_spec.rb:461 so that spec is green again 2019-05-09 23:33:43 +01:00
luisramos0
6dcc0b1d68 Run transpec for spec/jobs 2019-05-09 23:29:11 +01:00
luisramos0
fe017713ae Run transpec in spec/serializers 2019-05-09 22:43:07 +01:00
luisramos0
04801e5c2e Run transpec in spec/models 2019-05-09 22:25:29 +01:00
Luis Ramos
59e7cb313d Merge pull request #3815 from amers185/add_social_links
Add extra (Instagram) social media links to emails sent to customers and users [Looking for feedback/direction on completing solution]
2019-05-09 21:14:42 +01:00
dependabot[bot]
ef3ea0701e Bump i18n-js from 3.2.1 to 3.2.2
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.2.1 to 3.2.2.
- [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.2.1...v3.2.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-09 19:19:16 +00:00
Luis Ramos
6d62f4c4b4 Merge pull request #3817 from kristinalim/fix/1218-remove_oc_debug_information
1218 Remove OC "Debug Information" which appears in non-production environments
2019-05-09 16:05:18 +01:00
Luis Ramos
19881927e3 Merge pull request #3699 from HugsDaniel/3688-missing-translation-edit-sub
Add review & edit sub keys
2019-05-09 16:04:38 +01:00
Luis Ramos
24c96fab8b Merge pull request #3795 from lin-d-hop/translation-oc-spinner
Add translation to order cycle spinner
2019-05-09 16:03:53 +01:00
Luis Ramos
b821188f5d Merge pull request #3826 from luisramos0/knapsack
Add new knapsack report to get the build jobs more balanced
2019-05-09 16:00:38 +01:00
Maikel
7d163632a4 Merge pull request #3827 from openfoodfoundation/transifex
Transifex
2019-05-09 17:39:26 +10:00
Maikel Linke
a97792cbc3 Remove story from code comment 2019-05-09 11:57:13 +10:00
Eelco de Vlieger
d498ecf901 Issue 3450 - webdrivers update.
Ran `bundle install` to update Gemfile.lock (suggestion by semaphoreci check)
Moved webdrivers gem down in the list to be in better alphabetical order (suggested by codeclimate check)
2019-05-08 22:28:31 +01:00
Transifex-Openfoodnetwork
5ea9d8cf8b Updating translations for config/locales/de_DE.yml 2019-05-09 06:29:23 +10:00
Transifex-Openfoodnetwork
9abd60ef1e Updating translations for config/locales/de_DE.yml 2019-05-09 06:26:14 +10:00
luisramos0
ca5eddd27e Add new knapsack report to get the build jobs more balanced 2019-05-08 19:59:17 +01:00
Eelco de Vlieger
2900dd89d8 issue 3450 - update webdrivers version - version 3.9 was released yesterday, which caused a test error, so setting version to latest 3.8.1 for now 2019-05-08 19:50:36 +01:00
Eelco de Vlieger
5667c00587 issue 3450 - add webdrivers dependency (+ spec helper setup) and remove chromedriver-helper dependency
https://github.com/openfoodfoundation/openfoodnetwork/issues/3450
2019-05-08 19:10:14 +01:00
eelcodevlieger
295e814988 Merge pull request #1 from openfoodfoundation/master
sync
2019-05-08 18:59:26 +01:00
Masha
5eacf05a45 used string interpolation for clarity 2019-05-08 15:05:15 +01:00
Masha
d5ff733f0b spaces location swapped 2019-05-08 15:05:13 +01:00
Masha
5470f8d758 new translation key for products_or created 2019-05-08 15:03:28 +01:00
Masha
94cbac00a5 & replaced by OR when multiple property filters are selected 2019-05-08 15:00:59 +01:00
luisramos0
77178ca595 Add href and target attributes to product serializer sanitizer to allow links with target in product descriptions 2019-05-08 14:46:57 +01:00
idanceinbetween
7790401d59 added buttons to form and updated sanitizer to allow extra formatting 2019-05-08 14:45:05 +01:00
Pau Pérez Fabregat
a45782f59b Merge pull request #3814 from coopdevs/test-bulk-update-error
Test empty variants_attrs in bulk_update
2019-05-08 15:43:09 +02:00
Maikel
a0f60a9bfe Merge pull request #3806 from openfoodfoundation/transifex
Transifex
2019-05-08 15:50:50 +10:00
Maikel Linke
a3adbd9fc8 Replace connect-learn banner with custom content
The connect and learn banner is only used in Australia at the moment. We
would like to have customisable content here. Now every instance can
choose to place a custom alert banner at the top. Unfortunately, custom
banners are not translated into other languages. That's why I kept the
standard register call. For example, the register call is in use where
it is displayed in French and Italian. Completely switching to custom
content would break the translation.

Translations in custom content are an existing feature request,
"multi-lang 2.0".
2019-05-08 11:38:49 +10:00
Luis Ramos
4c767cd5b4 Merge pull request #3802 from kristinalim/fix/order_cycle_optimizations
3760 Optimizations related to OCs
2019-05-07 21:12:44 +01:00
Luis Ramos
6658f85f59 Merge pull request #3758 from jazzdragon/3292-link-popup-text-translation
3292 link popup text translation
2019-05-07 21:11:31 +01:00
Luis Ramos
dffa50468b Merge pull request #3801 from Matt-Yorkley/need_for_speed
Fix /maps performance
2019-05-07 21:08:34 +01:00
Kristina Lim
12b28fdc32 Remove "Debug Information" in edit OC page 2019-05-08 01:33:58 +08:00
Pau Pérez Fabregat
fc38906e60 Merge pull request #3672 from Matt-Yorkley/spree2/pi_shipping_category
[Spree Upgrade] shipping_category now required for products
2019-05-07 16:12:05 +02:00
Matt-Yorkley
fc8b220b4c Add specs for endpoint and serializers 2019-05-07 10:27:04 +01:00
Transifex-Openfoodnetwork
13985e28f4 Updating translations for config/locales/pt.yml 2019-05-07 19:01:37 +10:00
Transifex-Openfoodnetwork
8f62cf2bce Updating translations for config/locales/pt.yml 2019-05-07 19:01:29 +10:00
Kristina Lim
c3d4288692 Fix translation for closed/closes in subscription update modal 2019-05-07 14:52:03 +08:00
Syed Usama Amer
f71df770d0 added social links 2019-05-06 23:28:14 -05:00
Maikel Linke
38c9ecd44f Update pricing copy for Australian business model 2019-05-07 14:24:31 +10:00
Maikel Linke
0cf964e1bd Update About URL 2019-05-07 11:23:48 +10:00
Matt-Yorkley
6a8a67560b Fix API authentication 2019-05-07 00:36:08 +01:00
Matt-Yorkley
6bdc5d4438 Fix maps performance 2019-05-07 00:36:08 +01:00
Pau Perez
f940397781 Test empty variants_attrs in bulk_update
This covers the scenario we saw in
https://app.bugsnag.com/katuma/katuma/errors/5cd0595bece0b7001984f64c?event_id=5cd0595b0038be3b070d0000&i=sk&m=nw.
There is some other context we might be missing that makes it not
possible to reproduce.

I guess then, that this is an isolated case that does not prevent us
from deploying v2.0.0.
2019-05-06 22:23:37 +02:00
dependabot[bot]
010953cc6b Bump deface from 1.0.0 to 1.0.2
Bumps [deface](https://github.com/spree/deface) from 1.0.0 to 1.0.2.
- [Release notes](https://github.com/spree/deface/releases)
- [Changelog](https://github.com/spree/deface/blob/master/CHANGELOG.markdown)
- [Commits](https://github.com/spree/deface/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-05-06 19:16:37 +00:00
Kristina Lim
56bc497fe2 Simplify code for enterprise serializer for OCs 2019-05-06 23:49:55 +08:00
lin-d-hop
7b87e609c4 Set master variant price in products controller
Set master variant price in products controller

Code climate tidy up

Syntax improvement

Revert "Remove non-functional Price field from Edit Product screen"

This reverts commit 585072302c.

Syntax improvement

fixing revert

Revert "Remove non-functional Price field from Edit Product screen"

This reverts commit 585072302c.

fixing conflicts
2019-05-06 14:20:01 +01:00
Transifex-Openfoodnetwork
0e954e50d8 Updating translations for config/locales/nb.yml 2019-05-06 21:35:17 +10:00
Kristina Lim
7593168341 Update code style for Enterpise.not_ready_for_checkout
This was changed into multiple lines for readability.
2019-05-06 18:37:28 +08:00
Kristina Lim
c0a5bcce92 Update some comments in Enterprise and OrderCycle models 2019-05-06 18:35:01 +08:00
Kristina Lim
4430c88a95 Eager-load some data for admin order cycle pages 2019-05-06 15:41:29 +08:00
Kristina Lim
f14e7e97b1 Do not check need to warn of invalid OCs unless request is HTML 2019-05-06 15:41:29 +08:00
Kristina Lim
781afc1015 Change OC :suppliers and :distributors to associations 2019-05-06 13:43:44 +10:00
Kristina Lim
71bff0dd5b Reduce the number of queries in Enterprise.not_ready_for_checkout 2019-05-06 13:43:44 +10:00
lin-d-hop
10fba9b39f Add translation to order cycle spinner
lazy text
2019-05-05 19:12:53 +01:00
lin-d-hop
585072302c Remove non-functional Price field from Edit Product screen
Update initializer to override Product Price as required field.

Revert "Update initializer to override Product Price as required field."

This reverts commit 1bfca09c5cf9245fbc3d30a23e9d80ac545adcf5.
2019-05-05 16:41:54 +01:00
Matt-Yorkley
3323ac7650 Fix duplicate error messages 2019-05-05 13:30:38 +01:00
Pau Pérez Fabregat
b443f5ece9 Merge pull request #3789 from hughbric/remove_payment_enterprise_id_refs
references to payment_enterprise_id removed, new migration created
2019-05-05 12:30:19 +01:00
Matt-yorkley
bc349faf8c Fix on_hand failure 2019-05-05 12:00:46 +01:00
Matt-Yorkley
c04c54ebf6 Refactor importer setup and fix shipping_category usage 2019-05-05 12:00:46 +01:00
Matt-Yorkley
fd31a76fba Test shipping_category presence validation 2019-05-05 12:00:46 +01:00
Matt-Yorkley
dee9521f77 shipping_category now required for products 2019-05-05 12:00:46 +01:00
Luis Ramos
17f126d80c Merge pull request #3788 from stveep/3249-display-name-on-edit-variant-page
Add display_name and display_as to admin edit variant page
2019-05-05 11:31:27 +01:00
jazzdragon
37d15a1be3 Add classes to indicate collapsible is for medium screens or smaller 2019-05-04 20:12:12 -07:00
jazzdragon
623471290e Make sure styling doesn't get messed up if resizing down and back up 2019-05-04 19:52:08 -07:00
jazzdragon
a876f81f0a Make collapsible always visible on large screen 2019-05-04 19:48:30 -07:00
jazzdragon
271330d2fc Add collapsible elements and styles 2019-05-04 19:43:46 -07:00
stveep
7090281da5 Reorganise defaces so that display name fields come first 2019-05-04 21:48:32 +01:00
Pau Pérez Fabregat
958b144948 Merge pull request #3787 from eelcodevlieger/issue_3777-Make_all_map_icons_green
issue 3777 - Make all map icons green
2019-05-04 19:54:02 +02:00
Pau Pérez Fabregat
e3d9cab02b Merge pull request #3785 from kkoomin/3687-missing-translation-on-demand
changed string into translation key & add 'infinity' key
2019-05-04 19:01:39 +02:00
stveep
a959702905 Add display_name and display_as to admin edit variant page 2019-05-04 17:20:12 +01:00
Michael Hughes
9e56198092 references to payment_enterprise_id removed, new migration created 2019-05-04 16:32:48 +01:00
Eelco de Vlieger
4b2114c1e4 issue 3777 - Make all map icons green 2019-05-04 14:44:16 +01:00
kkoomin
f65ce82778 changed string into translation key & add 'infinity' key 2019-05-04 14:40:45 +01:00
Luis Ramos
6f0d155508 Merge pull request #3742 from openfoodfoundation/2-0-stable
Merge 2-0-stable to master
2019-05-04 00:06:27 +01:00
Luis Ramos
4afa0cdca1 Merge pull request #3589 from kristinalim/fix/2788-ship_address_changed
2788 [Subscriptions] Fix address issues when syncing subscriptions and orders
2019-05-03 23:48:32 +01:00
Luis Ramos
4f0930b77c Merge pull request #3717 from luisramos0/2-0-update-aws-sdk
[Spree Upgrade] Update to spree revision that depends on aws-sdk 1.11.1
2019-05-03 23:47:30 +01:00
luisramos0
53788625db Update to spree revision that depends on aws-sdk 1.11.1 making ofn gemfile.lock compatile with ofn/spree 2-0-4 gemspec 2019-05-03 13:16:25 +01:00
Luis Ramos
22a60e4fa9 Merge pull request #3769 from amers185/fix_rebase_error
Closes translation bug for enterprise fee settings
2019-05-03 12:53:52 +01:00
luisramos0
d7596b4066 Merge branch 'master' into fix_rebase_error 2019-05-03 12:10:57 +01:00
Pau Pérez Fabregat
969d3e863a Merge pull request #3768 from luisramos0/2-0-fix-on-demand
[Spree Upgrade] Migrate spree_variants.on_demand to spree_stock_items.backorderable
2019-05-03 10:52:16 +02:00
Luis Ramos
637e99367d Merge pull request #3747 from luisramos0/2-0-vo-ctrl-bug
[Spree Upgrade] Fix bug in Variant Overrides controller
2019-05-02 17:31:13 +01:00
luisramos0
4a9570b1a1 Merge branch '2-0-stable' into fix/2788-ship_address_changed 2019-05-02 16:17:53 +01:00
Luis Ramos
3b2e614c57 Merge pull request #3734 from luisramos0/2-0-validate-distribution
Removing a variant from OC will prevent user with that variant in the cart from checking out
2019-05-02 16:12:41 +01:00
Pau Pérez Fabregat
046d6ebdfc Merge pull request #3771 from luisramos0/2-0-stable-May2
[Spree Upgrade] LAST merge master into 2-0-stable 🎉
2019-05-02 14:26:24 +02:00
luisramos0
85cf4fa3e6 Merge branch 'master' into 2-0-stable-May2 2019-05-02 11:27:53 +01:00
Luis Ramos
edaf2479dc Merge pull request #3741 from luisramos0/2-0-stable-Apr15
[Spree Upgrade] Merging master into 2-0-stable (1st run in Apr2019)
2019-05-02 11:26:54 +01:00
luisramos0
f0f08f7cd3 Update all locales with the latest Transifex translations 2019-05-02 11:22:37 +01:00
Pau Pérez Fabregat
5f47a37fac Merge pull request #3763 from coopdevs/allow-passing-s3-region
Allow passing s3 region
2019-05-02 12:17:58 +02:00
luisramos0
340cbe5947 Eager load variants with variant overrides to avoid n+1 in the following line 2019-05-02 11:10:53 +01:00
luisramos0
116650595e Move test setup code to before block 2019-05-02 11:08:31 +01:00
luisramos0
42d1d3eff6 Migrate spree_variants.on_demand to spree_stock_items.backorderable 2019-05-02 10:59:27 +01:00
Pau Pérez Fabregat
2d77605e59 Merge pull request #3764 from Matt-Yorkley/s3_backups_without_images
Don't use s3 for images unless images bucket has been provisioned.
2019-05-01 17:55:01 +02:00
Syed Usama Amer
75a7745736 Closes translation bug for enterprise fee settings 2019-05-01 10:43:35 -05:00
Kristina Lim
19726061e4 Make Order#address_from_distributor public 2019-05-01 07:17:50 +08:00
Kristina Lim
92dc43d7a2 Make OrderUpdater#shipping_address_from_distributor public 2019-05-01 07:16:56 +08:00
Kristina Lim
0933d53134 Extract method OrderSyncer#update_ship_address_for 2019-05-01 07:16:56 +08:00
Kristina Lim
14d407879c Rename method OrderSyncer#update_ship_address_for
This method has become only a small part of the logic for updating the
order's ship address. This no longer follows the method naming
convention within OrderSyncer where update_*_for describes almost the
complete logic for updating the association.

This is renamed in preparation for extraction of the complete update
logic for ship_address. The new method will be named
update_ship_address_for.
2019-05-01 07:16:56 +08:00
Kristina Lim
6952f4ecd1 Improve readability of conditions in OrderSyncer 2019-05-01 07:16:55 +08:00
Kristina Lim
71f379a318 Uncomment passing specs for SubscriptionPlacementJob 2019-05-01 07:16:55 +08:00
Kristina Lim
b4b24931d9 Remove ignore for OrderSyncer spec file 2019-05-01 07:16:55 +08:00
Kristina Lim
46d63f43b9 Update check for pickup address manipulation
The way that the bill contact details and distributor address are set
for pickup orders has changed. At this point, after before_save_hook is
called, the bill contact details have already been set as well.
2019-05-01 07:16:54 +08:00
Kristina Lim
78aa9da2cf Uncomment and update OrderSyncer failing specs
This still achieves a logic issue before the Spree upgrade, where
switching from pick-up to delivery affects whether simultaneous changes
to shipping address are ignored or not.

This behaviour can be fixed in a separate PR.
2019-05-01 07:16:54 +08:00
Kristina Lim
bdf4132e01 Fix order shipment references in OrderUpdater 2019-05-01 07:16:54 +08:00
Pau Pérez Fabregat
88cbf5bd36 Merge pull request #3753 from openfoodfoundation/dependabot/bundler/whenever-0.11.0
Bump whenever from 0.10.0 to 0.11.0
2019-04-30 18:38:52 +02:00
Matt-Yorkley
732d0f7cf4 Don't use s3 for images unless images bucket has been provisioned.
Sets the "use_s3" (for images) option based on presence of `s3_images_bucket` from ofn-install instead of presence of s3 keys, for instances that use s3 for backups but not for images.
2019-04-30 17:06:42 +01:00
Pau Perez
d5b08c602a Allow passing a specific AWS region to S3 settings
This solves the error showed below when executed `bundle exec rake
db2fog:backup RAILS_ENV=staging` on Katuma staging

```
Excon::Error::BadRequest: Expected(200) <=> Actual(400 Bad Request)
excon.error.response
  :body          => "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Error><Code>AuthorizationHeaderMalformed</Code><Message>The authorization header is malformed; the region 'us-east-1' is wrong; expecting 'eu-central-1'</Message><Region>eu-central-1</Region><RequestId>3DE2763883FC601D</RequestId><HostId>1E6UapnblBqVZM0SeeLrdPNDd+VaQ0nxCWwrQ9mi8HjRo2xevAUwtSq5V3fxhsj4Cj9ynnDroco=</HostId></Error>"
```
2019-04-30 13:31:36 +02:00
Pau Perez
f36646d0a3 Store S3 keys in Config before calling db2fog
This ensures that Db2fog always picks up the latest value of the S3_*
env vars and not the one that was persisted last time. Now you can do
things like `S3_BUCKET=xxx bundle exec rake db2fog:backup` if you had
to.
2019-04-30 13:31:36 +02:00
Pau Pérez Fabregat
010f058618 Merge pull request #3744 from openfoodfoundation/dependabot/bundler/oj-3.7.12
Bump oj from 3.7.11 to 3.7.12
2019-04-30 11:53:44 +02:00
Pau Pérez Fabregat
6c9101dffa Merge pull request #3745 from openfoodfoundation/transifex
Transifex
2019-04-30 11:46:17 +02:00
luisramos0
d7e706e6e7 Make text area translations run immeditaly on setup with the t function instead of sending the translation expression down to the textAngular code 2019-04-29 13:40:52 +01:00
jazzdragon
7a27973ae3 Add translation and references in taTranslations (not working in alert) 2019-04-27 19:22:15 -07:00
jazzdragon
b42426a3b8 Add test for existing input alert text 2019-04-27 18:52:23 -07:00
jazzdragon
f6c0071554 Add reference comment 2019-04-27 17:01:07 -07:00
jazzdragon
35de9077da Add config for taTranslations (no functional change) 2019-04-27 16:57:02 -07:00
dependabot[bot]
2c536c29c5 Bump whenever from 0.10.0 to 0.11.0
Bumps [whenever](https://github.com/javan/whenever) from 0.10.0 to 0.11.0.
- [Release notes](https://github.com/javan/whenever/releases)
- [Changelog](https://github.com/javan/whenever/blob/master/CHANGELOG.md)
- [Commits](https://github.com/javan/whenever/compare/v0.10.0...v0.11.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-04-23 19:18:23 +00:00
Pau Pérez Fabregat
380a9c561e Merge pull request #3725 from coopdevs/add-specs-for-cache-variant-deletion
Add specs for the cache refresh on variant removal
2019-04-19 19:02:04 +02:00
Maikel
99a4878bdf Merge pull request #3653 from mkllnk/2520-spree2-order-subscription
2520 Remove `process_payments!` override
2019-04-19 07:34:30 +10:00
Maikel
736ac49581 Merge pull request #3701 from luisramos0/2-0-fix-order-edit-issues
[Spree Upgrade] Fix two issues in admin orders edit page
2019-04-19 07:33:26 +10:00
luisramos0
a68b5eaf22 Fix bug in Variant Overrides controller. It was validating authorization for variant overrides of deleted variants 2019-04-17 15:31:19 +01:00
luisramos0
3d420d5727 Merge branch 'master' into 2-0-stable-Apr15 2019-04-16 21:14:11 +01:00
Transifex-Openfoodnetwork
225b159b9b Updating translations for config/locales/en_BE.yml 2019-04-17 02:23:46 +10:00
Transifex-Openfoodnetwork
e07ae3d931 Updating translations for config/locales/en_BE.yml 2019-04-17 02:20:37 +10:00
Luis Ramos
6b84edb6d9 Merge pull request #3736 from kristinalim/feature/enable_newrelic_test_mode
Install and set up newrelic_rpm gem for development environment
2019-04-16 15:35:36 +01:00
Luis Ramos
c5720bede5 Merge pull request #3697 from coopdevs/add-delayed-job-web
Add delayed job web
2019-04-16 15:33:59 +01:00
Luis Ramos
eeac75ade1 Merge pull request #3689 from luisramos0/2-0-fix-split-button-bug
[Spree Upgrade] Fix split button reappearing when editing line item quantity
2019-04-16 15:28:43 +01:00
Luis Ramos
67a7e26757 Merge pull request #3695 from luisramos0/2-0-emails-transl
[Spree Upgrade] Fix translation missing in order confirmation email subject and bring cancel email to ofn
2019-04-16 13:44:24 +01:00
Luis Ramos
29000ebe0d Merge pull request #3651 from luisramos0/2-0-enterprise-fee-report
[Spree Upgrade] Fix Enterprise fee report specs
2019-04-16 12:36:53 +01:00
Maikel Linke
278190a25c Update specs for Spree v2 payment requirement
This pull request removed the override of `process_payments!` which was based on v1. Spree v2 has an additional check: An order in payment state requires a payment. Some specs didn't care and didn't create payments before transitioning to `complete`.
2019-04-16 10:30:14 +10:00
Maikel Linke
8b9a814131 Remove obsolete Spree 2 backport on Order 2019-04-16 10:30:14 +10:00
Maikel Linke
6f12eee8ae Reduce the override of Order for subscriptions
Orders belonging to subscriptions get completed without payment. That
requires overriding Spree's functionality.

In Spree 2, an order in payment state without pending orders is invalid.
Instead we skip the payment state by not requiring a payment for
automatically generated orders until the order cycle is closed.
2019-04-16 10:30:14 +10:00
dependabot[bot]
2a025be032 Bump oj from 3.7.11 to 3.7.12
Bumps [oj](https://github.com/ohler55/oj) from 3.7.11 to 3.7.12.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.7.11...v3.7.12)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-04-15 19:14:59 +00:00
luisramos0
a1905e43f7 Move a group of translations related to customers to the js translations namespace 2019-04-15 18:12:04 +01:00
luisramos0
9662323261 Move a group of translations related to schedules to the js translations namespace 2019-04-15 17:42:45 +01:00
Hugo Daniel
abdf3b5480 Add edit subcription translation key 2019-04-15 16:27:18 +01:00
luisramos0
e8ccb55f47 Use rspec 3 syntax in order_cycle_distributed_variants_spec and checkout_controller_spec 2019-04-15 12:39:52 +01:00
Pau Pérez Fabregat
ffbea7d3fd Merge pull request #3712 from openfoodfoundation/transifex
Transifex
2019-04-15 12:58:30 +02:00
Pau Pérez Fabregat
6d0ecdc4a6 Merge pull request #3721 from Matt-Yorkley/subs_styles
Subs styles
2019-04-15 12:53:27 +02:00
luisramos0
8f39a18ca3 Merge branch 'master' into 2-0-stable-Apr15 2019-04-15 11:46:31 +01:00
Transifex-Openfoodnetwork
f76fada066 Updating translations for config/locales/es.yml 2019-04-15 19:15:24 +10:00
Transifex-Openfoodnetwork
1b01c44ce4 Updating translations for config/locales/es.yml 2019-04-15 19:12:19 +10:00
Transifex-Openfoodnetwork
10c917a693 Updating translations for config/locales/ca.yml 2019-04-15 17:08:06 +10:00
Transifex-Openfoodnetwork
418d80bdc0 Updating translations for config/locales/ca.yml 2019-04-15 17:05:00 +10:00
luisramos0
fce3d69345 Add flash and warning to the cart page when item becomes unavailable 2019-04-13 21:39:41 +01:00
luisramos0
d602375ac7 Redirect user to cart page if some item in the order is unavailable 2019-04-13 20:31:05 +01:00
Luis Ramos
1e85bf6a68 Merge pull request #3641 from luisramos0/2-0-update-spree-2-0-4-revision
[Spree Upgrade] Update spree revision to include last package_factory fix
2019-04-12 22:16:15 +01:00
Pau Pérez Fabregat
e0fd2fbaa9 Merge pull request #3726 from Matt-Yorkley/db2fog_patch
Db2fog patch
2019-04-12 14:26:46 +02:00
Kristina Lim
53bd421389 Add newrelic.yml to .gitignore 2019-04-12 13:57:50 +08:00
Kristina Lim
6f5a024be2 Update script/setup to create default newrelic.yml 2019-04-12 13:57:50 +08:00
Kristina Lim
d983e400cd Add config/newrelic.yml.example for newrelic_rpm gem 2019-04-12 13:57:50 +08:00
Kristina Lim
c5e4b283f1 Install latest newrelic_rpm gem with test mode 2019-04-12 13:57:47 +08:00
Luis Ramos
0f00f48f13 Merge pull request #3634 from luisramos0/2-0-fix-sample-data
[Spree Upgrade] Fix new sample data in v2
2019-04-11 23:07:15 +01:00
luisramos0
59ec52babe Refactor order_cycle_distributed_variants, better method names and simpler code 2019-04-11 22:15:24 +01:00
luisramos0
44b0592223 Move OrdercycleDistributedVariants from lib/open_food_network to app/services 2019-04-11 21:37:08 +01:00
luisramos0
96ee527f0c Rename distribution_change_validator to order_cycle_distributed_variants 2019-04-11 21:14:01 +01:00
Transifex-Openfoodnetwork
45ca63e751 Updating translations for config/locales/fr_BE.yml 2019-04-12 01:14:59 +10:00
Transifex-Openfoodnetwork
b6989c6d6e Updating translations for config/locales/nl_BE.yml 2019-04-12 01:05:30 +10:00
luisramos0
46278e3edd Set distributor in order and shipping methods so that refreshing shipment rates suceeds 2019-04-10 22:16:09 +01:00
luisramos0
5791eba9bd Enhance orders edit page spec to verify that shipping method can be edited and that shipping methods of other distributors are not listed 2019-04-10 22:16:09 +01:00
luisramos0
c852c616d5 Update spree revision to include last package_factory fix and update spree dependencies 2019-04-10 22:16:09 +01:00
Luis Ramos
ddd3443a86 Merge pull request #3659 from mkllnk/missing-translation
Fix "What's this?" on admin dashboard
2019-04-10 22:05:19 +01:00
Luis Ramos
4bf9320be8 Merge pull request #3666 from mkllnk/1830-v2-edit-shipping-fees
Close adjustments so that updates are effective
2019-04-10 21:58:22 +01:00
Luis Ramos
83a4771cdd Merge pull request #3720 from Matt-Yorkley/spree2/translations
Subs: missing translations
2019-04-10 21:47:47 +01:00
Luis Ramos
984155013c Merge pull request #3648 from luisramos0/2-0-fix-ui-issue
[Spree Upgrade] Fix "back to list" button overlap and remove configurations menu from payments methods list
2019-04-10 21:46:40 +01:00
Luis Ramos
97c920f1b0 Merge pull request #3667 from mkllnk/3477-display-eligible-adjustments
3477 Render only eligible adjustments on the order page
2019-04-10 21:44:16 +01:00
Matt-Yorkley
7373fff190 Define default s3_protocol as 'https' 2019-04-10 19:23:16 +01:00
Matt-Yorkley
4912a9e258 Ensure ENV vars in applications.yml actually update stored Spree::Config preferences 2019-04-10 19:10:31 +01:00
Matt-Yorkley
2ac981a9a3 Make db2fog tasks conditional 2019-04-10 17:17:43 +01:00
Matt-Yorkley
37cbfcb692 Use ENV var for backups bucket 2019-04-10 17:17:17 +01:00
Pau Perez
f20a15e955 Add specs for the cache refresh on variant removal
This is failing in `master` but thanks to the VariantDeleter it does work
in v2. This specs prove it.
2019-04-10 16:16:00 +02:00
Matt-Yorkley
14fd821283 Rename states SCSS file for clarity 2019-04-10 13:12:44 +01:00
Matt-Yorkley
e486a94fb4 Add missing translations in subscriptions 2019-04-10 12:16:31 +01:00
Matt-Yorkley
9e0f35d635 Re-adjust buttons. Much better! 2019-04-10 12:15:21 +01:00
Matt-Yorkley
e13db873b0 Fix subs panel button vertical alignment 2019-04-10 12:15:21 +01:00
Matt-Yorkley
896a45c399 Fix subs state buttons 2019-04-10 12:15:21 +01:00
Matt-Yorkley
3968cfd238 Fix chevron horizontal position 2019-04-10 12:15:21 +01:00
Matt-Yorkley
3578d82cbf Merge pull request #3718 from luisramos0/2-0-fix-build
[Spree Upgrade] Add order distributor to shipping method in reports_spec
2019-04-10 12:14:00 +01:00
luisramos0
e4c54a4954 Add order distributor to shipping method in reports_spec 2019-04-09 23:26:14 +01:00
Luis Ramos
4478d51aee Merge pull request #3668 from luisramos0/2-0-stable-Mar29
[Spree Upgrade] Merging master into 2-0-stable (4th run in Mar2019)
2019-04-09 17:46:36 +01:00
Luis Ramos
449e58723d Merge pull request #3591 from luisramos0/2-0-fix-migrations
[Spree Upgrade] Fix Migrations to 2.0
2019-04-09 13:16:34 +01:00
Transifex-Openfoodnetwork
029e8eb848 Updating translations for config/locales/de_DE.yml 2019-04-09 20:50:31 +10:00
Luis Ramos
ef2e00ae31 Merge pull request #3604 from luisramos0/2-0-fix-splitters
[Spree Upgrade] Override default spree splitters config
2019-04-09 09:19:00 +01:00
Transifex-Openfoodnetwork
44e6adbe34 Updating translations for config/locales/en_GB.yml 2019-04-09 00:21:57 +10:00
Transifex-Openfoodnetwork
fde3d72a66 Updating translations for config/locales/en_GB.yml 2019-04-09 00:18:48 +10:00
Pau Pérez Fabregat
6e727e12e2 Merge pull request #3711 from openfoodfoundation/transifex
Transifex
2019-04-08 15:15:28 +02:00
Transifex-Openfoodnetwork
0261baaed3 Updating translations for config/locales/pt.yml 2019-04-08 21:06:43 +10:00
Transifex-Openfoodnetwork
4a69fdef27 Updating translations for config/locales/pt.yml 2019-04-08 21:06:39 +10:00
Transifex-Openfoodnetwork
5e672dc7d4 Updating translations for config/locales/pt.yml 2019-04-08 21:03:32 +10:00
Pau Pérez Fabregat
ffce31ca45 Merge pull request #3710 from coopdevs/pull-Transifex-translations
Update locales with latest Transifex translations
2019-04-08 12:56:23 +02:00
Pau Perez
860414fa31 Update locales with latest Transifex translations 2019-04-08 12:27:19 +02:00
Pau Pérez Fabregat
fa31ca5a95 Merge pull request #3686 from openfoodfoundation/transifex
Transifex
2019-04-08 12:23:36 +02:00
luisramos0
e9491cecab Fix flaky spec by having only one variant with display name small bag 2019-04-06 10:14:19 +01:00
luisramos0
258a9efa0d Adapt product_importer_spec to ofn v2 where there’s no product.count_on_hand and on_hand does not default to infinity if product.on_demand 2019-04-05 22:09:46 +01:00
luisramos0
bb4cec1186 Fix order_and_distributor_report_spec by setting ofn shipping method the ofn v2 way 2019-04-05 22:06:44 +01:00
Transifex-Openfoodnetwork
f5ab89eb03 Updating translations for config/locales/it.yml 2019-04-06 07:38:45 +11:00
luisramos0
ecc60f3b61 Merge branch 'master' into 2-0-stable-Mar29 2019-04-05 15:47:46 +01:00
Pau Pérez Fabregat
0c75a070c6 Merge pull request #3650 from kristinalim/fix/2786-address_subscription_confirm_job_failing_specs
3487,2786 [Spree Upgrade] Address spec failures for SubscriptionConfirmJob
2019-04-05 15:45:41 +02:00
Pau Perez
3e7e24d700 Make VariantController specs aware of destroy call
In v2 we no longer rely on `Variant#delete` but `Variant#destroy` so
stubbed calls needed fixing.
2019-04-05 15:38:10 +02:00
Transifex-Openfoodnetwork
80fd367da0 Updating translations for config/locales/en_US.yml 2019-04-06 00:27:12 +11:00
Transifex-Openfoodnetwork
231fa28713 Updating translations for config/locales/en_US.yml 2019-04-06 00:24:05 +11:00
Pau Pérez Fabregat
10165c4246 Merge pull request #3680 from kristinalim/fix/3285-db_migration_bang_shipping_rates
[Spree Upgrade] Bang version of create in DB migration for shipping rates
2019-04-05 15:11:41 +02:00
luisramos0
5989a654d1 Remove stock location from stock levels table and fix Spree.t entry bug 2019-04-05 14:01:27 +01:00
Pau Pérez Fabregat
1b55d04963 Merge pull request #3673 from Matt-Yorkley/spree2/css
Spree2/css
2019-04-05 14:57:57 +02:00
Pau Pérez Fabregat
67376a29a6 Merge pull request #3694 from Matt-Yorkley/db2fog
Fix outdated db2fog initializer
2019-04-05 12:26:07 +02:00
Transifex-Openfoodnetwork
74b7418f59 Updating translations for config/locales/fr.yml 2019-04-05 04:39:15 +11:00
Transifex-Openfoodnetwork
545f2fefa4 Updating translations for config/locales/fr.yml 2019-04-05 04:36:07 +11:00
Pau Perez
aa3f0ac577 Reuse #superadmin? in Delayed Job Web route
This moves #superadmin? to the user decorator so it can be reused
outside FeatureFlags.
2019-04-04 16:00:27 +02:00
Pau Perez
bf20376667 Add Delayed Job Web for superadmins only
This adds https://github.com/ejschmitt/delayed_job_web to enable async
job management such as retries, removal of failed jobs, etc.

Only superadmins can access this web UI though. Therefore any sysadmin
that needs to use it should have access to the appropriate instance
superadmin credentials in Bitwarden.
2019-04-04 16:00:27 +02:00
luisramos0
87327f7aa9 Fix specs testing order cancelation email. The email template now needs a order distributor for the signoff part 2019-04-04 13:41:07 +01:00
Pau Pérez Fabregat
07888b355a Merge pull request #3679 from mkllnk/3477-missing-v2-translation
Add missing translation for order form in v2
2019-04-04 14:25:05 +02:00
Transifex-Openfoodnetwork
8d69180c8c Updating translations for config/locales/es.yml 2019-04-04 23:23:06 +11:00
Transifex-Openfoodnetwork
4b60a75eae Updating translations for config/locales/ca.yml 2019-04-04 23:22:59 +11:00
Matt-Yorkley
9b45269cbb Fix name of Spree::Config preference 2019-04-04 13:06:05 +01:00
luisramos0
cf3b2308e1 Fix translation problem in the subject of order confirmation emails 2019-04-04 12:55:36 +01:00
luisramos0
6e49cf9f87 Bring cancel email from spree so it gets the normal ofn style 2019-04-04 12:31:12 +01:00
Matt-Yorkley
7522594b85 Fix outdated db2fog initializer 2019-04-04 12:02:57 +01:00
Maikel Linke
84501b9e41 Move feature spec to controller spec
It reduces the runtime (3s instead of 10s).
2019-04-04 17:01:44 +11:00
Maikel Linke
7b116c0982 Remove unnecessary condition from spec 2019-04-04 16:51:18 +11:00
Maikel Linke
72458da465 Comply to code convention using I18n.t in specs 2019-04-04 16:26:52 +11:00
Pau Pérez Fabregat
ec00544130 Merge pull request #3665 from mkllnk/stripe-version
Relax stripe version requirement
2019-04-03 17:02:40 +02:00
Pau Pérez Fabregat
c515a8f115 Merge pull request #3537 from Matt-Yorkley/pi/on_demand_error
Fix nil values in on_hand column
2019-04-03 11:56:06 +02:00
Pau Pérez Fabregat
b288cb00c1 Merge pull request #3654 from mkllnk/3237-spec-overrides-in-inventory-report
Test inventory report to use variant overrides
2019-04-03 11:55:33 +02:00
Maikel Linke
d31b5efac6 Simplify orders helper 2019-04-03 11:15:54 +11:00
Maikel Linke
7035d57267 Better helper naming and spec cover 2019-04-03 11:13:56 +11:00
luisramos0
ea52600fc5 Fix split button reappearing when editing line item quantity 2019-04-02 21:58:29 +01:00
Transifex-Openfoodnetwork
898966fbea Updating translations for config/locales/pt.yml 2019-04-03 03:20:34 +11:00
Transifex-Openfoodnetwork
b8f8ea964e Updating translations for config/locales/pt.yml 2019-04-03 03:17:29 +11:00
Transifex-Openfoodnetwork
1874f55fa4 Updating translations for config/locales/pt.yml 2019-04-03 03:14:14 +11:00
luisramos0
5e64c9f392 Fix deface override to remove configurations menu from payment methods list, this is necessary because non-admin users do get to this page through enterprises management" 2019-04-02 16:58:50 +01:00
luisramos0
5c69d6c9dc Fix page action in the backoffice when translations are long 2019-04-02 16:58:45 +01:00
luisramos0
112a57d330 Remove association between adjustments and shipments that are going to be deleted in AddUniquenessOfOrderIdToSpreeShipments 2019-04-02 12:31:39 +01:00
luisramos0
40124b7421 Improve downloads_helper clear_downloads method 2019-04-02 11:39:52 +01:00
luisramos0
7cc5940e19 Load DownloadsHelper only for feature specs 2019-04-02 11:39:52 +01:00
luisramos0
e10264af86 Remove xfeature from enterprise fees summmary report spec 2019-04-02 11:39:52 +01:00
luisramos0
d9304916cc Add chrome driver config to make testing csv downloads with headless chrome possible 2019-04-02 11:39:52 +01:00
luisramos0
c36f7e003b Adapt assertions to new csv file download logic 2019-04-02 11:39:52 +01:00
luisramos0
4f803eba7e Add around blocks to clear downloads directory before and after every test 2019-04-02 11:39:52 +01:00
luisramos0
4795832db5 Add spec DownloadsHelper to support testing csv downloads with headless chrome 2019-04-02 11:39:52 +01:00
luisramos0
c291601d9f Fix rubocop warnings in enterprise_fee_summary report spec 2019-04-02 11:39:52 +01:00
Kristina Lim
3035d14369 Use bang version of create! in DB migration script 2019-04-02 15:21:58 +08:00
Maikel Linke
8b6561addd Add missing translation for order form in v2
I saw the following error on the 2-0-stable branch:

  translation missing: en.spree.line_item_adjustments

In a pending PR I change all three translations in the view file to use
lazy lookup. This commit backports the addition to the locale so that it
can be translated via Transifex before we release v2.
2019-04-02 17:52:24 +11:00
Maikel Linke
0c846758dd Add missing translation to order form
I saw the following error:

  translation missing: en.spree.line_item_adjustments

In this commit I change all three translations in the view file to use
lazy lookup.
2019-04-02 17:47:36 +11:00
Maikel Linke
2a6236823f Move adjustment filtering from view to helper 2019-04-02 17:25:33 +11:00
Maikel Linke
11c12787f6 Move adjustment selection to helper 2019-04-02 17:02:05 +11:00
Maikel Linke
d78c709ad2 Remove unused variables from view 2019-04-02 16:58:08 +11:00
Maikel Linke
500cf925ad Fix HTML validity and element finding in spec
The fixed partial was used twice on the same page. So the used element
id appeared twice on the page which is invalid HTML. It also confused
the spec.

Now we look at the actually displayed text to select the correct
element.
2019-04-02 16:50:44 +11:00
Luis Ramos
9c99e64f1f Merge pull request #3316 from luisramos0/2-0-phase2-reports
[Spree Upgrade] Phase 2 - Reports ready - all specs running and green (except enterprise fee report)
2019-04-01 21:46:31 +01:00
Luis Ramos
d48d2a748b Merge pull request #3662 from SDBowen/add_shipping_method
Add shipping method name to orders detail report
2019-04-01 15:37:57 +01:00
Matt-Yorkley
668a37f564 Fix "clear all" button spacing in inventory 2019-04-01 12:18:19 +01:00
Matt-Yorkley
4a0e5a42a3 Fix admin menu items different heights 2019-04-01 12:11:29 +01:00
Matt-Yorkley
082be15df2 Fix admin menu mixed font weights 2019-04-01 12:00:29 +01:00
Matt-Yorkley
fa91a66de6 Fix button padding after Spree 2 font changes increased the vertical height 2019-04-01 11:48:18 +01:00
Matt-Yorkley
3ad2c9f7c4 Fix 'clear all' button width on Order Cycles page 2019-04-01 11:41:46 +01:00
Kristina Lim
d866fad46e Persist variants in customer totals specs
This is to properly record the on hand quantity.
2019-03-31 18:32:09 +08:00
luisramos0
bc8bca074c Switch object in the ability to access reports. This adapts to this change in Spree: 3685569db4
Adapt NavigationHelper to return the controller object for reports so that Reports tab works correctly.
2019-03-29 22:16:39 +00:00
luisramos0
1fc4b7fd2a Add manual shipping adjustment
For some reason this adjustment is not being added to order through the callbacks as it was before. See PR #3371
2019-03-29 22:16:39 +00:00
luisramos0
d713c755e6 Uncomment report specs so we can make them work in v2 2019-03-29 22:16:38 +00:00
luisramos0
527cfc1601 Merge branch 'master' into 2-0-stable-Mar29 2019-03-29 13:48:49 +00:00
Maikel Linke
f630738b2c Fix HTML syntax in admin view 2019-03-29 18:42:06 +11:00
Maikel Linke
5760aed6a6 Render only eligible adjustments on the order page
https://github.com/openfoodfoundation/openfoodnetwork/issues/3477

The admin orders edit form was displaying adjustments even if they were
"not eligible". For example, an additional fee with amount `0` is not
eligible. They were already hidden in the adjustments view and we are
hiding them in reports.
2019-03-29 18:41:38 +11:00
Maikel Linke
fabca84001 Close adjustments so that updates are effective
Spree 2.0 keeps shipping fee adjustments open unless they are manually
closed. But open adjustments cannot be edited.
To preserve updates, like changing the amount of the shipping fee
we close the adjustment first.
2019-03-29 17:23:15 +11:00
Maikel
7348987567 Merge pull request #3315 from luisramos0/2-0-phase2-pi
[Spree Upgrade] Phase 2 - Product Import ready - all specs running and green
2019-03-29 15:16:35 +11:00
Maikel
6e31f0078a Merge pull request #3639 from coopdevs/fix-variant-cache-refreshing-on-delete
Fix variant cache refreshing on delete
2019-03-29 15:12:46 +11:00
Maikel Linke
29f32604f2 Relax stripe version requirement
We are using the latest version of the `stripe` gem. We don't depend on
any particular version. I'm proposing to drop our dependency declaration
on a particular version and just track the current used version in
Gemfile.lock. That means fewer code changes when updating, which happens
quite frequently with this gem.
2019-03-29 13:40:51 +11:00
Maikel
973ae3d43a Merge pull request #3656 from openfoodfoundation/dependabot/bundler/stripe-4.11.0
Bump stripe from 4.10.0 to 4.11.0
2019-03-29 13:39:08 +11:00
sdbowen
0f7ef2671f Add shipping method name to orders detail report
Added column allows users to see the shipping method of each order.
2019-03-28 16:08:10 -06:00
luisramos0
3742c70910 Add backup process to AddUniquenessOfOrderIdToSpreeShipments so that the deleted duplicated shipments can be recovered if something goes wrong 2019-03-28 18:49:38 +00:00
Maikel
fed2b60743 Merge pull request #3644 from kevinchristianson/master
Fixed producer profile translation bug
2019-03-28 15:51:45 +11:00
Maikel
6978e3fdb6 Merge pull request #3658 from mkllnk/3582-shipping-method-spec
Wait for entered tag before submitting
2019-03-28 13:46:56 +11:00
Maikel
74aea76c4c Merge pull request #3609 from luisramos0/2-0-delete-acct-invoices-last-bit
[Spree Upgrade] Finish up deleting account invoices
2019-03-28 13:42:01 +11:00
Kristina Lim
f0746eb643 Use :performing_deliveries in spec 2019-03-28 02:04:13 +08:00
luisramos0
b780823970 Fix specs to adapt to the fact that for the order workflow to get to delivery, the shipping method must be linked to the order distributor otherwise it's ignored when creating the order shipment 2019-03-27 14:10:51 +00:00
Luis Ramos
4455073f6d Merge pull request #3647 from luisramos0/fix-shipment-state-translation
Add missing translation key for order shipment state canceled
2019-03-27 13:02:14 +00:00
Maikel Linke
bcebb99967 Fix "What's this?" on admin dashboard
When a user has no enterprises, the admin dashboard displays a "What's
this?" hint in the right corner of the enterprises tab. The link text
and the tooltip were both broken (missing translation).
2019-03-27 11:04:08 +11:00
Maikel Linke
ef882b8293 Wait for entered tag before submitting
The changed spec was failing from time to time. This change seems to
make it stable. It may be worth moving tag entering into a helper that
verifies that the tag was entered (waits for it).
2019-03-27 10:58:00 +11:00
dependabot[bot]
6c97bb6cac Bump stripe from 4.10.0 to 4.11.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 4.10.0 to 4.11.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/v4.10.0...v4.11.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-03-26 19:25:43 +00:00
luisramos0
249e2bc9e1 Merge branch '2-0-stable' into 2-0-fix-sample-data 2019-03-26 15:50:16 +00:00
luisramos0
ae66e864a5 Improve models/spree/order/checkout_spec: AR is here to help you :-D 2019-03-26 15:37:36 +00:00
luisramos0
428656e92e Add distributor to shipping method in factory completed_order_with_fees so that shipping method is not discarded during order processing in package.shipping_methods 2019-03-26 15:37:36 +00:00
luisramos0
beb19cdc8a Override default spree splitters config (was Shipping Category and Backordered) to use only Base splitter, this splitter does not split the orders into multiple shipments
In OFN we cannot split the orders because one order can only have one shipment

Additionally, add spec to validate that the order workflow now works with products with different shipping categories
2019-03-26 15:37:35 +00:00
Pau Pérez Fabregat
a8f81ae7a2 Merge pull request #3652 from kristinalim/fix/3410-address_proxy_orders_controller_failing_specs
3410 [Spree Upgrade] Address spec failures for Admin::ProxyOrdersController
2019-03-26 15:55:13 +01:00
luisramos0
5ce762a600 Uncomment product import specs so we can make them work in v2 2019-03-26 11:34:04 +00:00
Luis Ramos
c68b0d768a Merge pull request #3640 from luisramos0/2-0-stable-Mar22
[Spree Upgrade] Merging master into 2-0-stable (3rd run in Mar2019)
2019-03-26 10:42:27 +00:00
luisramos0
f35972cee9 Remove deleted menu entry product distributions 2019-03-26 09:08:52 +00:00
luisramos0
010007a2c7 Merge branch '2-0-stable' into 2-0-stable-Mar22 2019-03-26 09:07:48 +00:00
Luis Ramos
9a771ecbb8 Merge pull request #3613 from luisramos0/2-0-update-variants-stock
[Spree Upgrade] Add on_hand and on_demand to the variants create and edit pages
2019-03-26 08:55:34 +00:00
Maikel
d963df2c87 Merge pull request #3632 from openfoodfoundation/dependabot/bundler/oj-3.7.11
Bump oj from 3.7.10 to 3.7.11
2019-03-26 16:28:36 +11:00
Maikel
84246fedc9 Merge pull request #3631 from openfoodfoundation/dependabot/bundler/stripe-4.10.0
Bump stripe from 4.9.0 to 4.10.0
2019-03-26 16:28:08 +11:00
Maikel
6ad42fcceb Merge pull request #3636 from openfoodfoundation/transifex
Transifex
2019-03-26 16:27:50 +11:00
Maikel Linke
9d4589632b Test inventory report to use variant overrides 2019-03-26 16:13:50 +11:00
Maikel
9e3734fc3e Merge pull request #3646 from kristinalim/fix/3528-product_sku_in_report
3528 Scope Customer Totals report also by variant (not just product) and use variant SKU
2019-03-26 12:05:14 +11:00
Kristina Lim
db6dab2e54 Address failing specs for ProxyOrdersController 2019-03-26 00:56:02 +08:00
Transifex-Openfoodnetwork
a2f3110b06 Updating translations for config/locales/en_CA.yml 2019-03-26 03:33:01 +11:00
Transifex-Openfoodnetwork
e504783929 Updating translations for config/locales/fr_CA.yml 2019-03-26 03:06:18 +11:00
Kristina Lim
2aad5baac5 Make code style changes for SubscriptionConfirmJob specs 2019-03-25 22:22:11 +08:00
Kristina Lim
18fe35e130 Address spec failures for SubscriptionConfirmJob 2019-03-25 21:55:38 +08:00
Transifex-Openfoodnetwork
a4bc739d48 Updating translations for config/locales/de_DE.yml 2019-03-25 16:40:06 +11:00
Kristina Lim
807cdb4746 Code style changes for Customer Totals report 2019-03-25 07:46:32 +08:00
Kristina Lim
4a95578db2 Use name helpers in Customer Totals report 2019-03-25 07:46:31 +08:00
Kristina Lim
79d0b63069 Add Spree::Address#full_name_reverse 2019-03-25 07:46:31 +08:00
Kristina Lim
7c7d61fbc5 Simplify some logic for Customer Totals report
Line items belong to a single order.
2019-03-25 07:46:30 +08:00
Kristina Lim
c088fb9a49 Use shorter syntax for Customer Totals report 2019-03-25 07:46:30 +08:00
Kristina Lim
46e7090d11 Group report by variant and use variant SKU
This groups the Customer Totals report by variant too (among others,
including by product), and then changes the report to use the variant
SKU not the product SKU.

This adds a spec for customer totals grouping and details, which
replaces the test specific to the SKU column.
2019-03-25 07:45:32 +08:00
Maikel Linke
7bc735eea3 Cover report content with specs 2019-03-25 04:47:13 +08:00
Maikel Linke
fdd8c06823 Style reports spec 2019-03-25 04:47:13 +08:00
Maikel Linke
856603cadd Convert specs to RSpec 3.8.0 syntax with Transpec
This conversion is done by Transpec 3.4.0 with the following command:
    transpec spec/lib/open_food_network/orders_and_fulfillments_report_spec.rb

* 8 conversions
    from: == expected
      to: eq(expected)

* 8 conversions
    from: obj.should
      to: expect(obj).to

* 1 conversion
    from: obj.stub(:message)
      to: allow(obj).to receive(:message)

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2019-03-25 04:47:13 +08:00
Maikel Linke
0a243ac9ca Give spec vars proper names 2019-03-25 04:47:12 +08:00
Maikel Linke
6ee27cd166 Fix spec to test the right report
Probably a copy&paste error. The PackingReport had exactly the same
spec.
2019-03-25 04:47:12 +08:00
Maikel Linke
dac4d4ff1a DRY report spec 2019-03-25 04:47:07 +08:00
luisramos0
2c97eaa62e Add missing translation key for order shipment state canceled 2019-03-24 15:33:14 +00:00
Transifex-Openfoodnetwork
b979a09478 Updating translations for config/locales/en_US.yml 2019-03-23 23:42:22 +11:00
Transifex-Openfoodnetwork
f050086d47 Updating translations for config/locales/pt.yml 2019-03-23 23:28:49 +11:00
Transifex-Openfoodnetwork
dc198b7b5d Updating translations for config/locales/pt.yml 2019-03-23 23:28:43 +11:00
Usama
698c71f039 Fixed producer profile translation bug 2019-03-22 18:25:40 -05:00
luisramos0
a8c0eef3d3 Improve admin variants controller create action, it doesn't try to set on_hand and on_demand if there are previous errors in the variant 2019-03-22 23:23:10 +00:00
luisramos0
78ea16c684 Remove unnecessary data-hooks from stock management deface override 2019-03-22 21:30:25 +00:00
luisramos0
01f82e5214 Move OrderSyncer spec to xdescribe until it is fixed as part of spree upgrade phase 2. This is a subscriptions specific spec 2019-03-22 13:06:45 +00:00
luisramos0
287ea6038a Remove distributors from product in completed_order_with_fees factory. This setter is no longer available after product distributions has been deleted 2019-03-22 11:50:24 +00:00
luisramos0
c1d14686a6 Merge branch 'master' into 2-0-stable-Mar22 2019-03-22 10:55:17 +00:00
Luis Ramos
6cd07cd107 Merge pull request #3605 from kristinalim/fix/2788-improve_specs_for_order_syncer
[Subscriptions] (v1) Fix assertions in specs for OrderSyncer
2019-03-22 10:31:01 +00:00
Luis Ramos
8d2d5a8708 Merge pull request #3579 from luisramos0/sanitize_data
Add sanitize and truncate data tasks
2019-03-22 10:29:57 +00:00
Pau Pérez Fabregat
846e6fdd90 Merge pull request #3560 from kristinalim/fix/2788-shipping_method_id_in_shipments
2696,2788 [Spree Upgrade] Fix use of shipping method ID for subscriptions
2019-03-22 11:08:23 +01:00
Pau Pérez Fabregat
deec4f83f8 Merge pull request #3633 from mkllnk/remove-product-distribution-from-sample-data
Remove usage of ProductDistribution which is dead
2019-03-22 10:54:59 +01:00
Pau Pérez Fabregat
4595ea033f Merge pull request #3624 from mkllnk/2873-spec-register-link
Add spec for registration link on Spree pages
2019-03-22 10:47:43 +01:00
Pau Pérez Fabregat
5b06f580e2 Merge pull request #3614 from mkllnk/3335-localized-number-for-weight-calculator
Support international decimals in weight calculator
2019-03-22 10:35:37 +01:00
Pau Pérez Fabregat
87f0ddabe7 Merge pull request #3548 from luisramos0/2-0-remove-unused-new-v2-features
[Spree Upgrade] Remove unused spree v2 features
2019-03-22 10:35:15 +01:00
Pau Perez
96b8c8ac2c Refresh products cache also on Variant#delete
Note that, as explained in
https://apidock.com/rails/v3.2.13/ActiveRecord/Relation/delete, `delete` does
not trigger callbacks and so it skips the products cache logic.

If we still want to avoid instantiating the AR object, we need to explicitly
call that logic for the cache to be up-to-date.
2019-03-22 09:57:15 +01:00
Pau Perez
b293e00777 Test that we refresh the cache on variant destroy
These tests prove that
https://github.com/openfoodfoundation/openfoodnetwork/issues/3629 is
indeed is a bug because we don't refresh the cache when deleting
a variant.
2019-03-22 09:38:24 +01:00
Pau Perez
fbc3fc6a51 Test spree/admin/variants_controller #destroy 2019-03-22 09:18:31 +01:00
Transifex-Openfoodnetwork
2ba10c416a Updating translations for config/locales/nb.yml 2019-03-22 07:41:18 +11:00
Kristina Lim
c222971e26 Clean up setup data for some OrderSyncer specs 2019-03-22 03:30:50 +08:00
Kristina Lim
0c2a75a227 Randomize bill and ship address of sample subscriptions
This also fixes some phone references in OrderSyncer specs.
2019-03-22 02:47:12 +08:00
Kristina Lim
7be669e1dd Add address factory with randomized attributes
Randomizing all addresses generated will be explored separately.
2019-03-22 02:45:50 +08:00
Kristina Lim
d047e04e33 Customize addresses for subscriptions in specs
This forces us to write correct assertions when adding specs affected by
subscription addresses.
2019-03-22 01:58:27 +08:00
Transifex-Openfoodnetwork
f0d985753f Updating translations for config/locales/fr.yml 2019-03-22 03:23:47 +11:00
Transifex-Openfoodnetwork
310b4a08b7 Updating translations for config/locales/fr.yml 2019-03-22 03:20:40 +11:00
luisramos0
e2f5515412 Fix sample data by setting on_demand in the product variant, setting product.on_demand is not possible in v2 2019-03-21 13:13:50 +00:00
luisramos0
88335c7f6c Fix sample data in v2 by adapting to the fact that shipping methods can now have multiple zones 2019-03-21 13:12:44 +00:00
luisramos0
98a262f86e Fix sample data in v2 by setting a Default shipping category in both products and shipping methods 2019-03-21 13:12:03 +00:00
Maikel Linke
42ee4b9f42 Remove usage of ProductDistribution which is dead
Sample data was failing since:
https://github.com/openfoodfoundation/openfoodnetwork/pull/3570
2019-03-21 13:11:05 +00:00
Kristina Lim
94606025c9 Separate call and call! for AdvanceOrderService 2019-03-21 20:34:51 +08:00
luisramos0
61433ee395 Make anonimize and truncate tasks respect rubocop rules 2019-03-21 11:16:56 +00:00
Maikel Linke
0b7192b82a Remove usage of ProductDistribution which is dead
Sample data was failing since:
https://github.com/openfoodfoundation/openfoodnetwork/pull/3570
2019-03-21 17:37:16 +11:00
Maikel Linke
3803094409 Add more examples to LocalizedNumber spec 2019-03-21 12:49:19 +11:00
Maikel Linke
3ef6878233 Avoid global state change by using config stub 2019-03-21 12:49:19 +11:00
Maikel Linke
1ea2f37c18 Support international decimals in weight calculator
A previous pull request added support for flexible decimal characters
when editing money amounts.
https://github.com/openfoodfoundation/openfoodnetwork/pull/1831

This pull request applies the same principle to the weight calculator
which was missed in the previous pull request.
2019-03-21 12:49:19 +11:00
Maikel
130ba64f2f Merge pull request #3619 from openfoodfoundation/dependabot/bundler/dalli-2.7.10
Bump dalli from 2.7.9 to 2.7.10
2019-03-21 12:47:29 +11:00
Maikel
f1ac33f304 Merge pull request #3590 from mkllnk/3576-bulk-order-spec
3576 Fix bulk order management race condition
2019-03-21 12:40:41 +11:00
Maikel Linke
d62908fd2d Add spec for registration link on Spree pages
The `registration_path` helper resolves to `/signup` in Spree
controllers due to spree_auth_device > config > routes.rb.
We worked around that in:
https://github.com/openfoodfoundation/openfoodnetwork/pull/3174

Here we add a spec for this so that we can test more easily if we
remove that workaround or detect it's accidental removal.
2019-03-21 10:06:15 +11:00
dependabot[bot]
6b01eba293 Bump oj from 3.7.10 to 3.7.11
Bumps [oj](https://github.com/ohler55/oj) from 3.7.10 to 3.7.11.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.7.10...v3.7.11)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-03-20 19:23:20 +00:00
dependabot[bot]
ee79f97aa0 Bump stripe from 4.9.0 to 4.10.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 4.9.0 to 4.10.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/v4.9.0...v4.10.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-03-20 19:22:18 +00:00
Kristina Lim
d3c2d1859c Update all locales with the latest Transifex translations 2019-03-21 01:56:45 +08:00
Kristina Lim
b942dc1074 Merge pull request #3628 from openfoodfoundation/transifex
Transifex
2019-03-21 01:52:58 +08:00
Transifex-Openfoodnetwork
08894c242c Updating translations for config/locales/en_GB.yml 2019-03-21 04:04:33 +11:00
Transifex-Openfoodnetwork
eeb8f12b4e Updating translations for config/locales/en_GB.yml 2019-03-21 04:01:27 +11:00
Transifex-Openfoodnetwork
79eb89ac0b Updating translations for config/locales/en_GB.yml 2019-03-21 03:58:20 +11:00
Luis Ramos
61c778eeac Merge pull request #3555 from luisramos0/2-0-fix-order-state-translations
[Spree Upgrade] Improve order state translations in v2
2019-03-20 12:26:35 +00:00
Luis Ramos
59af77eb0e Merge pull request #3620 from mkllnk/3520-customers-spec
Fix flaky spec by waiting for modal animation
2019-03-20 12:02:11 +00:00
luisramos0
3841656979 Rename data sanitize task to data anonymize 2019-03-20 11:58:26 +00:00
luisramos0
fefced5400 Improve sanitize data: keep customers connected to users and let addresses' city and zipcode remain as they are 2019-03-20 11:49:55 +00:00
luisramos0
804375d1aa Delete obsolete pending delayed jobs related to the deleted account invoices feature 2019-03-20 11:24:57 +00:00
luisramos0
78d7222364 Drop account invoices and billable periods tables, the feature has been deleted 2019-03-20 11:19:48 +00:00
luisramos0
c0c14b16b6 Remove dynamic monthly pricing description that would come from the deleted business model configurations 2019-03-20 11:19:04 +00:00
Maikel
0f5e6474b8 Merge pull request #3602 from luisramos0/2-0-shipments-stock-location
[Spree Upgrade] Add migrations necessary to successfully migrate data to v2
2019-03-20 21:36:45 +11:00
Pau Pérez Fabregat
98a2e87587 Merge pull request #3610 from luisramos0/2-0-stable-Mar16
[Spree Upgrade] Merging master into 2-0-stable (2nd run in Mar2019)
2019-03-20 09:33:07 +01:00
Pau Pérez Fabregat
4f82808243 Merge pull request #3617 from luisramos0/edit-variants-specs
Add spec to cover editing on_hand and on_demand values in the variants edit page
2019-03-20 09:13:56 +01:00
Pau Pérez Fabregat
2a3a935c16 Merge pull request #3570 from luisramos0/byebye-prod-distributions
Delete dead feature product distributions
2019-03-20 09:01:23 +01:00
Maikel Linke
a66eb7fe1d Add spec for registration link on Spree pages
The `registration_path` helper resolves to `/signup` in Spree
controllers due to spree_auth_device > config > routes.rb.
We worked around that in:
https://github.com/openfoodfoundation/openfoodnetwork/pull/3174

Here we add a spec for this so that we can test more easily if we can
remove that workaround or detect it's accidental removal.
2019-03-20 15:02:30 +11:00
Maikel Linke
aef5cebeed Fix flaky spec by waiting for modal animation
Without waiting, `fill_in` can fail randomly:
https://github.com/teamcapybara/capybara/issues/1890
2019-03-20 12:15:01 +11:00
dependabot[bot]
b0854b6d51 Bump dalli from 2.7.9 to 2.7.10
Bumps [dalli](https://github.com/petergoldstein/dalli) from 2.7.9 to 2.7.10.
- [Release notes](https://github.com/petergoldstein/dalli/releases)
- [Changelog](https://github.com/petergoldstein/dalli/blob/master/History.md)
- [Commits](https://github.com/petergoldstein/dalli/compare/v2.7.9...v2.7.10)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-03-18 19:21:33 +00:00
luisramos0
21a10d0206 Add on_hand and on_demand back to variants form (both variant create and edit pagei), this is where they used to be in spree v1
The admin variants controller create action is adapted (same as in the admin ProductsController). This is necessary because variant.on_hand and on_demand cannot be mass assigned on creation in v2, see VariantStock for more details.

For now we are hiding the new stock management page that comes in spree v2 as we don't need the complexity added by the management of stock per stock location (only one stock location in ofn v2 for now)
2019-03-18 19:02:48 +00:00
luisramos0
9194a711ea De-deface product tabs
We do not include stock management from v2 because we will use the variants edit page to manage on_hand and on_demand
2019-03-18 18:47:25 +00:00
luisramos0
90a14d426b Add spec to cover editing on_hand and on_demand values in the variants edit page 2019-03-18 17:04:59 +00:00
luisramos0
9fff795162 Fix typo in en.yml in key new_shipping_category 2019-03-18 17:04:59 +00:00
luisramos0
b148b9ae46 Remove delete addresses SQL from truncate task 2019-03-18 12:04:37 +00:00
Pau Pérez Fabregat
fb29a7c7c2 Merge pull request #3606 from openfoodfoundation/dependabot/bundler/oj-3.7.10
Bump oj from 3.7.9 to 3.7.10
2019-03-18 12:12:13 +01:00
luisramos0
22a051e720 Enable products cache by default only in staging and production
We keep tests running by default without cache, keeping it as it was before 10a79d5a65

Additionally, cached_products_renderer no longer depends on Rails.env, so here we remove that dependency from it's spec.
2019-03-17 15:03:15 +00:00
luisramos0
60ee17204b Merge branch 'master' into 2-0-stable-Mar16 2019-03-16 16:17:38 +00:00
Kristina Lim
7505dd0410 Make order sync for shipping methods readable 2019-03-15 07:59:54 +11:00
dependabot[bot]
d7b25d63f9 Bump oj from 3.7.9 to 3.7.10
Bumps [oj](https://github.com/ohler55/oj) from 3.7.9 to 3.7.10.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.7.9...v3.7.10)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-03-14 19:25:55 +00:00
Kristina Lim
3ab00d862e Create subscriptions with set up shipping methods
The shipping methods are updated to their target settings after the
subscription order has been created, so the order is created with the
"require_ship_address" factory default which is "true".

The shipping method setting at time of order creation has implications
on whether a shipment is set up for the order or not.
2019-03-15 03:15:55 +08:00
Kristina Lim
ba100a6522 Specify order addresses in some OrderSyncer specs
This is to check that we are using the correct address data in
assertions.

This also clarifies the scenario for one of the specs.
2019-03-15 03:15:55 +08:00
Kristina Lim
7200e2c2c2 Specify hub address in some OrderSyncer specs
This fixes some assertions from using the same subscription shipping and
billing addresses, and distributor address.

One of the specs also pass because the subscription shipping address
matches the distributor address. This commit makes that scenario
clearer.
2019-03-15 03:15:55 +08:00
Kristina Lim
ad935e8d66 Require spec_helper.rb for OrderSyncer specs 2019-03-15 03:15:54 +08:00
Pau Pérez Fabregat
75abd4586e Merge pull request #3583 from coopdevs/handle-deleted-oc-refreshing-cache
Handle deleted order cycle when refreshing cache
2019-03-14 20:11:14 +01:00
Pau Pérez Fabregat
33b74bef0e Merge pull request #3599 from coopdevs/add-nl_BE-belgium
Bring in latest nl_BE translations
2019-03-14 18:59:57 +01:00
Pau Pérez Fabregat
baacea9f6a Merge pull request #3595 from coopdevs/instrument-products-cache
Instrument products cache
2019-03-14 18:58:43 +01:00
Pau Perez
e60437c6a2 Refactor test to execute public API instead 2019-03-14 18:53:11 +01:00
Pau Perez
b9636b975a Refactor test to stop using .any_instance
Although might be useful in very particular cases its use is discourage
by RSpec itself. See https://relishapp.com/rspec/rspec-mocks/docs/working-with-legacy-code/any-instance
2019-03-14 18:53:11 +01:00
Pau Perez
bc34d04c31 Do not retry when refreshing cache on deleted OC 2019-03-14 18:53:11 +01:00
luisramos0
cb78f8f8c8 Fetch latest nl_BE translations from transifex with correct menu links 2019-03-13 23:29:40 +00:00
Pau Perez
fede58289b Move Cache::Store config to new initializer
I don't know why but `Rails.logger` is still nil when evaluated from
`configure` block in `config/environments/development.rb`. The only way
I found to make ActiveSupport's cache to use the default logger is from
an initializer.

Note that `ActiveSupport::Cache::Store` uses `debug` level and so we
need to set the dev logger in that same level to see its messages. If
you want to debug in staging as well, you'll need to modify the log
level manually.
2019-03-13 19:08:46 +01:00
Pau Perez
15a95a3bf5 Use :file_store cache store in development
:memory_store uses the process' memory and therefore, what the
background job writes is not reachable for the rails server process when
it reads from the cache. See
https://github.com/openfoodfoundation/openfoodnetwork/wiki/Products-cache#development.
2019-03-13 19:08:46 +01:00
Pau Perez
10a79d5a65 Decouple CachedProductsRenderer from the Rails env
This way we don't need to touch the class implementation to enable the
products cache in development. Just change the default value in
`app/models/spree/app_configuration_decorator.rb`.
2019-03-13 19:08:46 +01:00
Pau Pérez Fabregat
13b2115a29 Merge pull request #3581 from coopdevs/cache-stylistic-improvements
Cache stylistic improvements
2019-03-13 19:05:38 +01:00
luisramos0
8965dedfd7 Add sanitize and truncate tasks to support loading live data into other environments safely 2019-03-13 16:08:07 +00:00
luisramos0
0bfeabbb3e Add migration to create default shipping category and set it in shipping methods and products that do not have a shipping category yet
This is a modified version of this spree migration: af16cf1d74
2019-03-13 15:36:21 +00:00
luisramos0
f914a6d869 Add migration to set default stock location on all shipments without stock location
This is a modified version of this spree migration: https://github.com/spree/spree/commit/219e09b
2019-03-13 14:38:56 +00:00
luisramos0
786ba15174 Remove unused translation 2019-03-13 12:24:40 +00:00
luisramos0
7a2bc384d5 Re-add spec removed in product distributions removal but now adapted to use order cycles 2019-03-13 12:24:40 +00:00
luisramos0
34d7070c6c Delete spec used to test product distributions (removed feature) 2019-03-13 12:24:40 +00:00
luisramos0
b62e350fab Improve reports controller decorator by removing some copy pasted code and deleting some code repeated across data_load and the main action methods 2019-03-13 12:24:40 +00:00
luisramos0
2401b947b9 Make load sample data rake task work without product distributions 2019-03-13 12:24:40 +00:00
luisramos0
05d42d475e Make reports and subscriptions specs work without product.distributors attribute 2019-03-13 12:24:40 +00:00
luisramos0
2de6c46834 Make order.order_cycle required in cart_service. There’s no more exception for that without product_distributions. 2019-03-13 12:24:40 +00:00
luisramos0
4768ca27c7 Remove all dependencies to product distributions including the validation to avoid deleting fees with product distributions 2019-03-13 11:50:35 +00:00
luisramos0
3117dbf624 Remove product distributions from order model 2019-03-13 11:50:35 +00:00
luisramos0
a022cebfc8 Remove product distributions from enterprise model and controller 2019-03-13 11:49:13 +00:00
luisramos0
ed9321e92d Remove product distributions from product model and controller 2019-03-13 11:47:50 +00:00
luisramos0
86f9b3d663 Delete product_distributions: drop table and remove models, controllers and BO edit page 2019-03-13 11:47:50 +00:00
Kristina Lim
8782f2087c Use service in admin/payments#create
This separates logic for bang and non-bang versions of
Spree::Order#next.

The different conditions used in both methods (state == "completed" vs
order.completed?) have implications in whether a transition is attempted
or not.
2019-03-13 17:00:31 +11:00
Kristina Lim
0e691815ea Use service in admin/orders/customer_details#update 2019-03-13 12:45:57 +08:00
Kristina Lim
abaf90fc41 Copy more actions advancing order from Spree
This copies the following:

* admin/orders/customer_details#update
* admin/payments#create
2019-03-13 12:45:57 +08:00
Kristina Lim
56e2ee5366 Fix specs for OrderSyncer 2019-03-13 12:45:56 +08:00
Kristina Lim
0cfee37567 Fix setup records for SubscriptionPlacementJob specs 2019-03-13 12:45:56 +08:00
Kristina Lim
7c3433425f Fix setup records for OrderFactory specs 2019-03-13 12:45:55 +08:00
Kristina Lim
182fde58e5 Uncomment now passing tests related to subscriptions 2019-03-13 12:45:55 +08:00
Kristina Lim
a261d912ea Simplify order sync logic for shipping methods 2019-03-13 12:45:54 +08:00
Kristina Lim
9316096d4d Fix updating of the shipping method for an order 2019-03-13 12:45:54 +08:00
Kristina Lim
5b5d1967fd Fix queries for pending order shipment in OrderSyncer 2019-03-13 12:45:53 +08:00
Kristina Lim
54991f8191 Retain shipping method when transitioning order 2019-03-13 12:45:53 +08:00
Kristina Lim
7a8bf76123 Move transitioning of order in admin/orders#edit to service 2019-03-13 12:45:50 +08:00
Maikel Linke
d129665d43 Wait for orders being loaded in bulk order manage
The bulk order management page tried to wait for orders being loaded.
But instead of receiving a request object with an a promise to wait for
the page received a simple array without promise. As a result, the page
didn't wait for orders being loaded.

When loading of orders took longer than loading of line items they or at
least not all of them were enriched with distributors and order cycles
and the line items were missing some orders. That lead to random spec
failures.
2019-03-13 10:37:24 +11:00
luisramos0
7c39c45f79 Stop using inexistent en.order_state translations keys and use existing en.spree.order_state in haml code and new js.admin.orders.order_state in JS code 2019-03-12 19:42:08 +00:00
luisramos0
77655bfffb Rename resource content to contents so that it matches the name of the controller ContentsController. This makes the is_active logic work on the configuration menu
See the menu is_active code here: f55722b38d/backend/app/helpers/spree/admin/navigation_helper.rb (L145)
2019-03-12 19:11:37 +00:00
luisramos0
bd9eba9ef8 Fix add_uniqueness_of_order_id_to_spree_shipments by first removing shipments from orders with more than one shipment 2019-03-12 18:00:06 +00:00
luisramos0
0c8c4be2ee Fix migrate tax categories to line items migration
This is bringing 67186f8ca7 from spree v2.2
2019-03-12 17:59:55 +00:00
luisramos0
2295981375 Merge branch '2-0-stable' into 2-0-remove-unused-new-v2-features 2019-03-12 16:55:48 +00:00
Pau Pérez Fabregat
2dd55770fe Merge pull request #3569 from luisramos0/delete-more-overrides
Delete some more dead overrides and more dead code
2019-03-12 17:48:12 +01:00
Pau Pérez Fabregat
01baba336d Merge pull request #3575 from openfoodfoundation/dependabot/bundler/unicorn-5.5.0
Bump unicorn from 5.4.1 to 5.5.0
2019-03-12 17:30:56 +01:00
Pau Perez
c4fcc25faa Bring in latest nl_BE translations
As we didn't reach 100% translation Transifex does not sync the changes
into the repo. However, the Belgian instance still needs it.
2019-03-12 15:30:52 +01:00
Kristina Lim
ce5691d080 Copy admin/orders#edit from Spree controller
This method needs to be updated to use custom order advance logic in
service.
2019-03-12 18:31:27 +08:00
Kristina Lim
f42eb3dab1 Create shipment when creating a order for a subscription
A spec has been added to check that the attributes for the order states
after "cart" ("address", "delivery", "payment") are retained if the
order is transitioned to completion, BUT currently this is passing
because it is the only shipping method available.
2019-03-12 18:31:27 +08:00
Kristina Lim
0306cc7ca7 Set shipping method when creating order for subscription 2019-03-12 18:31:26 +08:00
Kristina Lim
5f571aad2f Set required ship address in order in spec
The ship address of the order is properly set in
ProxyOrder#initialise_order! through OrderFactory.

The source of these spec failures seem to be a matter of how the records
are set up for the tests.
2019-03-12 18:31:26 +08:00
Maikel Linke
7270a9e8e8 DRY date calculation in BOM js
This also minimises the risk of values changing in the meantime.
2019-03-12 18:59:14 +11:00
Maikel
6722f21cb0 Merge pull request #3593 from openfoodfoundation/transifex
Transifex
2019-03-12 16:01:28 +11:00
Maikel
b94c6c1fb6 Merge pull request #3580 from luisramos0/2-0-stable-Mar6
[Spree Upgrade] Merging master into 2-0-stable (1st run in Mar2019)
2019-03-12 11:44:41 +11:00
Maikel Linke
49a6b5224d Remove duplicate expectations from spec 2019-03-12 11:35:06 +11:00
Maikel Linke
af9e80e55d Load data after all callbacks are installed 2019-03-12 09:46:27 +11:00
Maikel Linke
0c6a5d730b Add spaces around HAML brackets 2019-03-12 09:12:10 +11:00
Maikel Linke
6f875e83ec Remove unconventional and unused ng:cloak selector 2019-03-12 09:10:39 +11:00
Maikel Linke
9e33ef8140 Style ng-cloak directive 2019-03-12 09:09:52 +11:00
Maikel Linke
30c1a8d924 Move ng-cloak CSS to components 2019-03-12 08:59:59 +11:00
Pau Perez
931cb89a9d Move new class to services and rename it 2019-03-11 18:28:25 +01:00
Transifex-Openfoodnetwork
46f16c060b Updating translations for config/locales/en_US.yml 2019-03-12 00:38:22 +11:00
Transifex-Openfoodnetwork
8afd5e7050 Updating translations for config/locales/nb.yml 2019-03-09 06:33:01 +11:00
Luis Ramos
f6ecf3de64 Merge pull request #3568 from luisramos0/2-0-improve-order-factories
[Spree Upgrade] Improve order factories
2019-03-08 09:43:26 +00:00
Maikel Linke
4574a770d3 Synchronise dereferencing and initilising
This seems to make the spec 4 times more reliable. Still failing from
time to time.
2019-03-08 17:36:25 +11:00
Maikel Linke
e00a3ee263 Use clearer and more reliable waiting in spec 2019-03-08 17:24:31 +11:00
Maikel Linke
52fd7b102e Unify visiting bulk order management
DRYing the code allows for easier refactor and more consistency.
2019-03-08 14:46:58 +11:00
Maikel Linke
37d37a6057 Speed up initial spec log in 2019-03-08 14:46:39 +11:00
Maikel Linke
2d7498b77b Hide elements before Angular is loaded
The "Loading orders" spinner is still visible from the beginning so that
it can be used as indicator for when the page is loaded.

Before, the "No orders found" message was visible between page load and
Angular initilisation.
2019-03-08 14:23:18 +11:00
Maikel
22bac3daaf Merge pull request #3588 from openfoodfoundation/transifex
Transifex
2019-03-08 11:31:36 +11:00
Maikel
608c322770 Merge pull request #3585 from mkllnk/1829-missing-translation-product-category
1829 missing translation product category
2019-03-08 10:10:09 +11:00
luisramos0
61f1bf5ec8 Fix shipping_methods edit page missing translation 2019-03-07 17:15:06 +00:00
Transifex-Openfoodnetwork
2eb3b7acea Updating translations for config/locales/fr.yml 2019-03-08 04:06:14 +11:00
Transifex-Openfoodnetwork
66d6936452 Updating translations for config/locales/en_GB.yml 2019-03-08 01:36:28 +11:00
Pau Pérez Fabregat
f125686016 Merge pull request #3511 from coopdevs/update-bugsnag-notifier-library
Update Bugsnag from 5.5.0 to 6.11.1
2019-03-07 11:30:04 +01:00
Maikel Linke
972ebb5fc9 Fix missing translation by using AR default
Using the default fixes a missing translation. The text is slightly
changed but should be okay as well:

- "^Tax Category is required"
+ "Tax category can't be blank"
2019-03-07 11:54:04 +11:00
Maikel Linke
5ed13d1539 Fix translation by using ActiveRecord's default
Our translations are not available when decorators are loaded. The
message for a missing product category was missing:
https://github.com/openfoodfoundation/openfoodnetwork/issues/1829

I moved the translation to ActiveRecord's default scope so that it can
be picked up automatically.
2019-03-07 11:37:54 +11:00
Matt-Yorkley
3f6a6f7f33 Merge pull request #3572 from openfoodfoundation/transifex
Transifex
2019-03-07 00:17:49 +00:00
Matt-Yorkley
59fd5ce478 Merge branch 'master' into transifex 2019-03-07 00:17:14 +00:00
Matt-Yorkley
4fe7d276b4 Update all locales with the latest Transifex translations 2019-03-07 00:04:09 +00:00
Maikel Linke
f033cfcc12 Remove obsolete Bugsnag option
It prevents the app from booting with the new Bugsnag version.
2019-03-07 10:04:20 +11:00
Pau Perez
8db6560fe7 Update Bugsnag from 5.5.0 to 6.11.1
This brings lots of fixes and a great dose of enhancements such as
a rewritten `Delayed::Job` integration.
2019-03-07 10:03:43 +11:00
Maikel
4780a2193f Merge pull request #3209 from mkllnk/2072-test-data
2072 New sample data for testing
2019-03-07 08:49:12 +11:00
Pau Pérez Fabregat
e850182f95 Merge pull request #3563 from kristinalim/fix/3562-fix_payment_fee_for_order_based_calculator
3562 Fix error calculating payment fee using order-based calculator
2019-03-06 19:31:49 +01:00
Pau Pérez Fabregat
9f8d90cc0a Merge pull request #3305 from coopdevs/improve-shops-performance-take-2
Improve shops performance take 2
2019-03-06 16:25:28 +01:00
Transifex-Openfoodnetwork
9922ce070e Updating translations for config/locales/es.yml 2019-03-07 02:22:03 +11:00
Pau Perez
347aa3c4ae Replace #valid_products_distributed_by by class 2019-03-06 15:06:00 +01:00
Pau Perez
adb40d6c73 Test just the public method
This one is the one calling the private method that was tested now. It
involves some refactoring of the specs as well.
2019-03-06 13:38:53 +01:00
Pau Perez
7c533c6347 Extract DistributedValidProducts from OrderCycle 2019-03-06 13:35:43 +01:00
luisramos0
2470830ec8 Fix jquery ui merge mistake, it should be jquery.ui.all in v2, not jquery-ui 2019-03-06 11:28:50 +00:00
luisramos0
9644fcf67c Improve payment method factory in sample data by removing constantize 2019-03-06 10:01:17 +00:00
Pau Perez
2b58aab197 Extract method from cache key generation 2019-03-06 10:49:56 +01:00
Pau Perez
bbfd35c861 Fix CacheSettingsController violations 2019-03-06 10:45:45 +01:00
luisramos0
b325cea6cb Merge branch 'master' into 2-0-stable-Mar6 2019-03-06 09:19:53 +00:00
Transifex-Openfoodnetwork
0e2d303701 Updating translations for config/locales/ca.yml 2019-03-06 20:00:41 +11:00
Pau Pérez Fabregat
7e06807a11 Merge pull request #3539 from Matt-Yorkley/subs/confirmation_email
Don't process proxy_order if the order has been cancelled
2019-03-05 17:38:29 +01:00
Pau Pérez Fabregat
3ddee83be5 Merge pull request #3404 from luisramos0/2-0-disable-cache
[Spree Upgrade] Add checkbox to disable products cache
2019-03-05 14:51:11 +01:00
Pau Pérez Fabregat
30bbc5ee6f Merge pull request #3472 from pacodelaluna/fix-datetime-picker
Fix datetime picker on Order Cycle form
2019-03-05 14:50:34 +01:00
Pau Pérez Fabregat
b330db3b4b Merge pull request #2947 from Matt-Yorkley/pi/submenu_link
Pi/submenu link
2019-03-05 14:49:02 +01:00
Transifex-Openfoodnetwork
03aaea2a08 Updating translations for config/locales/ca.yml 2019-03-05 21:52:24 +11:00
dependabot[bot]
6ecb9cc848 Bump unicorn from 5.4.1 to 5.5.0
Bumps [unicorn](https://bogomips.org/unicorn/) from 5.4.1 to 5.5.0.

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-03-04 19:18:03 +00:00
Luis Ramos
72e9c1d002 Merge pull request #3321 from luisramos0/2-0-delete-acct-invoices
[Spree Upgrade] Delete Accounts and Billing dead feature code until we decide we want to start using it again
2019-03-04 15:54:09 +00:00
Pau Pérez Fabregat
2369c54f9d Merge pull request #3552 from luisramos0/2-0-fix-stock-migration
[Spree Upgrade] Fix create default stock migration
2019-03-04 12:07:18 +01:00
Transifex-Openfoodnetwork
5ddb8fb1ae Updating translations for config/locales/nb.yml 2019-03-04 21:22:36 +11:00
Pau Perez
54e120889f Remove useless array wrapping on AR relation 2019-03-04 11:08:34 +01:00
luisramos0
5ab4ae88f5 Remove distribution change in order_spec, order distributor cannot be changed, if distributor or oc is changed, the order is emptied 2019-03-02 13:08:39 +00:00
luisramos0
7ac4a99bc7 Remove product distributions spe that needed distribution_change_validator. Product distributions will be removed soon, see https://github.com/openfoodfoundation/openfoodnetwork/issues/3525 2019-03-02 13:08:39 +00:00
luisramos0
d7bd944af3 Fix distribution_change_validator spec 2019-03-02 13:08:35 +00:00
luisramos0
351555d4e2 Remove unused methods from add_to_cart helper and distribution change validator 2019-03-02 12:55:08 +00:00
luisramos0
93e13742be Delete some more dead overrides. We are not using spree/checkout (except for /checkout/payment) nor spree/products 2019-03-01 23:56:03 +00:00
luisramos0
d840fa7b77 Improve order factories:
- Make order_with_totals_and_distribution shorter by inheriting from order_with_distributor
- Make completed_order_with_fees more correct by inheriting only from order_with_distributor: this removes the line_item_with_shipment of order_with_totals_and_distribution that was causing an extra shipping adjustment to be kept in the order. This adjustment was being tested in the order controller spec (fixed the explanation comment in the spec which was wrong, there was no enterprise fee in this order)
2019-03-01 20:00:58 +00:00
Pau Pérez Fabregat
6c83f67b86 Merge pull request #3556 from Matt-Yorkley/pi/template
Add description to CSV template
2019-03-01 11:37:58 +01:00
Maikel
a14c785e69 Merge pull request #3435 from Matt-Yorkley/bug/tmpfile
Use Dir::Tmpname.make_tmpname for threadsafe file naming
2019-03-01 10:20:26 +11:00
Maikel
54679f6651 Merge pull request #3535 from luisramos0/translations-for-v2
Move to master all en.yml entries added so far to v2 and add more missing v2 translations
2019-03-01 10:04:13 +11:00
luisramos0
e4edfe0b61 Merge branch 'master' into translations-for-v2 2019-02-28 21:32:34 +00:00
Pau Pérez Fabregat
88e6fa84a2 Merge pull request #3534 from luisramos0/registration_trans_all
Move registration process translations to lazy lookups to better organize the en.yml file
2019-02-28 17:15:09 +01:00
Pau Pérez Fabregat
aa635106ac Merge pull request #3531 from mkllnk/document-stock-validation-rules
Document stock validation of variant overrides
2019-02-28 17:14:45 +01:00
Pau Pérez Fabregat
89708de7c1 Merge pull request #3512 from kristinalim/fix/3478-scope_enterprise_fee_summary_to_eligible
3466,3478 [Enterprise Fee Summary] Scope report to eligible: true and non-zero adjustments
2019-02-28 17:14:15 +01:00
Pau Pérez Fabregat
6f0479c27d Merge pull request #3547 from openfoodfoundation/dependabot/bundler/combine_pdf-1.0.16
Bump combine_pdf from 1.0.15 to 1.0.16
2019-02-28 17:13:50 +01:00
Pau Pérez Fabregat
63312a6d5f Merge pull request #3554 from coopdevs/bring-bugsnag-initializer
Bring in Bugsnag initializer from ofn-install
2019-02-28 16:41:59 +01:00
Kristina Lim
36e4a22b58 Use delegate for Payment#line_items 2019-02-28 09:52:56 +08:00
Kristina Lim
bd58667747 Remove stock check done for payment fees 2019-02-28 09:24:29 +08:00
Maikel Linke
958e98debd Document stock validation of variant overrides 2019-02-28 12:21:26 +11:00
Kristina Lim
ce658e9dfa Fix error computing payment fee when order-based 2019-02-28 12:17:45 +11:00
Kristina Lim
dfc8cc0f9e Add failing test for calculation of payment fee 2019-02-28 12:17:44 +11:00
Maikel
4ed0831e4c Merge pull request #3550 from openfoodfoundation/transifex
Transifex
2019-02-28 11:39:57 +11:00
Luis Ramos
f502ba0a1f Merge pull request #3504 from luisramos0/2-0-scoping
[Spree Upgrade] Add spec to order_cycle model covering variant scoping
2019-02-28 00:09:10 +00:00
Maikel
824beba066 Merge pull request #3505 from luisramos0/vo-false
Adapt scope_variant_to_hub to new VO rules where on_demand=nil means use_producer_settings
2019-02-28 10:26:23 +11:00
Maikel
c472d2fbbe Merge pull request #3498 from luisramos0/delete-dead-overrides
Remove dead overrides
2019-02-28 10:25:42 +11:00
luisramos0
03d242c061 Fix typo in sample_data zone creation (zonEable) and added clause to avoid re-adding the same country to the zone 2019-02-27 23:19:39 +00:00
Maikel
65ba9324de Merge pull request #3513 from luisramos0/2-0-remove-variant-count-on-hand
[Spree Upgrade] Remove variant.count_on_hand (keep variant.on_hand only)
2019-02-28 09:07:41 +11:00
luisramos0
ad5c379771 Make sample data zone read from the environment variable CHECKOUT_ZONE 2019-02-27 09:46:18 +00:00
luisramos0
d418ca1b1f Add mandatory payment method provider to sample data payment methods 2019-02-27 09:45:21 +00:00
Pau Pérez Fabregat
a04de6e3cd Merge pull request #3499 from openfoodfoundation/dependabot/bundler/stripe-4.9.0
Bump stripe from 4.5.0 to 4.9.0
2019-02-27 09:56:32 +01:00
Danni M
5b880f7bfe Update issue templates
Fixed headings on the story template
2019-02-27 10:41:39 +11:00
François Turbelin
82fbcd35a8 Update tests 2019-02-26 22:07:11 +01:00
Matt-Yorkley
9dd5b9dd6c Fix import button specificity in feature spec 2019-02-26 20:06:02 +00:00
Matt-Yorkley
25e2d2adda Update references to product_sub_menu view 2019-02-26 20:06:01 +00:00
Matt-Yorkley
777850259b Apply and delete overrides 2019-02-26 19:42:47 +00:00
Matt-Yorkley
f1e55507c3 Recreate product_sub_menu Spree view 2019-02-26 19:42:47 +00:00
Matt-Yorkley
32470f33ec Add description to CSV template 2019-02-26 19:36:44 +00:00
luisramos0
3f3581cdbc Add more missing translations for v2, remove unnecessary en.order_state and remove duplicated en.spree.payment_states and en.spree.shipment_states 2019-02-26 16:54:48 +00:00
Pau Perez
4d47276810 Bring Bugsnag initializer from ofn-install
This copies ofn-install's `roles/app/templates/bugsnag.rb.j2` to
`config/initializers/bugsnag.rb`. All tasks and templates
regarding Bugsnag can then be 🔥 from ofn-install.

As a result, it'll fix the issue that both Katuma and OFF are facing
where the `config/initializer/bugsnag.rb` symlink to
`shared/config/bugsnag.rb` does not exist thus, nothing gets notified to
Bugsnag since December 3rd (according to customer support).
2019-02-26 17:52:49 +01:00
luisramos0
4411e1ed43 Fix create default stock migration by adding a version of the code that works with the DB at that point in time, i.e., stock_locations without active column 2019-02-26 16:05:33 +00:00
luisramos0
7b05eebc5b Fix rubocop issue in db migration 2019-02-26 14:54:24 +00:00
luisramos0
a0594f7616 Re-add invoice settings controller removed by mistake 2019-02-26 14:14:17 +00:00
luisramos0
a36722cebf Merge branch '2-0-stable' into 2-0-remove-variant-count-on-hand 2019-02-26 12:47:11 +00:00
luisramos0
37685c8107 Move the code that hides the split order button from js to css 2019-02-26 12:34:07 +00:00
Pau Perez
a728da4f62 Cover product and producer props. in ctrl. spec 2019-02-26 12:09:26 +01:00
Pau Perez
915b5cf09e Inline also the active product properties query
This makes it easier to spot what are the differences and similarities
between active and non-active, which in turn, it'll help remove the N+1
the "active" branch causes.

Make it look `#distributed_producer_properties` with which seems to
share a lot.
2019-02-26 11:39:43 +01:00
Pau Perez
19cbda4128 Fix Rubocop violation 2019-02-26 11:39:43 +01:00
Pau Perez
24c031b3cd Extract #distributed_product_properties method 2019-02-26 11:39:43 +01:00
Pau Perez
6e9bb640f6 Add spacing between long scopes 2019-02-26 11:36:36 +01:00
Pau Perez
7b2d4f10ee Cover #distributed_properties \w a controller spec
This exercises the controller and the serializer ensuring the
integration works allowing to confidently refactor things further.
2019-02-26 11:36:36 +01:00
Pau Perez
e55fbf80fc Check property presentation attribute only in test
The PropertySerializer contains :id, :name and :presentation attributes
which leads to JSON objects like `{"id": 1, "name": "foo",
"presentation": "foo"}`. Because of this, we don't care about object
identity, just about their presentation attribute.
2019-02-26 11:36:36 +01:00
Pau Perez
d4635bd7cb Fetch Property instead of ProducerProps from query
By not having to treat producer properties differently we can filter and
fetch all properties from DB without having to process it with Ruby and
with a single query.
2019-02-26 11:36:36 +01:00
Pau Perez
92e2ed78d1 Test active distributor as well 2019-02-26 11:36:36 +01:00
Pau Perez
8eb35e491d Don't fetch rows by ids of DISTINCT records
There's no point on fetching the same records again by the resulting ids
of the previous query (nasty way of removing duplicates), when that
query has a DISTINCT.
2019-02-26 11:36:36 +01:00
Pau Perez
328cda66f5 Stop using PropertyMerge in serializer 2019-02-26 11:36:36 +01:00
Pau Perez
47a90e937b Have a duplicate product to test with 2019-02-26 11:36:36 +01:00
Pau Perez
8fef69387e Simplify test setup using factory transient attrs 2019-02-26 11:36:36 +01:00
Pau Perez
0782907f4d Setup a test order cycle with its exchanges 2019-02-26 11:36:36 +01:00
Pau Perez
64fb230297 Make it more obvious we talk about an enterprise 2019-02-26 11:36:36 +01:00
Pau Perez
a5f890cf36 Fix styling on method 2019-02-26 11:36:36 +01:00
Transifex-Openfoodnetwork
539544de28 Updating translations for config/locales/es.yml 2019-02-26 20:49:18 +11:00
Transifex-Openfoodnetwork
595fb75d82 Updating translations for config/locales/es.yml 2019-02-26 20:46:12 +11:00
luisramos0
15456577a3 Remove the button that enables user to split an order between stock locations
There's only one stock location in OFN so this feature is not useful at this point
2019-02-25 23:39:21 +00:00
luisramos0
ebf825e349 De-deface configuration menu
Remove stock locations and stock transfers from the menu
2019-02-25 23:38:50 +00:00
François Turbelin
e1953c279b Move jquery-ui-timepicker libs to vendor dir 2019-02-25 22:48:30 +01:00
François Turbelin
ab86332949 Tune up config and style 2019-02-25 22:22:27 +01:00
François Turbelin
68fd6de39b Update Jquery datetimepicker lib to v1.6.3 2019-02-25 22:22:27 +01:00
dependabot[bot]
a1647053cb Bump combine_pdf from 1.0.15 to 1.0.16
Bumps [combine_pdf](https://github.com/boazsegev/combine_pdf) from 1.0.15 to 1.0.16.
- [Release notes](https://github.com/boazsegev/combine_pdf/releases)
- [Changelog](https://github.com/boazsegev/combine_pdf/blob/master/CHANGELOG.md)
- [Commits](https://github.com/boazsegev/combine_pdf/compare/v1.0.15...v1.0.16)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-25 19:26:41 +00:00
luisramos0
8a59e06d36 Remove buttons 'open/close all adjustments' from order adjustments edit page
We may re-add this feature in the future, we are not introducing the capacity to open/close adjustments in OFN. See https://github.com/openfoodfoundation/openfoodnetwork/issues/1830 for context
2019-02-25 16:42:22 +00:00
luisramos0
0501db1782 Remove changes related to enterprise trials as they dont make sense without business models and account invoices 2019-02-25 14:37:16 +00:00
luisramos0
a870299ced Delete preferences and adjustments related to account invoices 2019-02-25 14:37:16 +00:00
luisramos0
36e2786a1e Delete Accounts and Billing dead feature code 2019-02-25 14:37:16 +00:00
Pau Pérez Fabregat
df77f6e051 Merge pull request #3536 from Matt-Yorkley/flaky/bom_spec
Wait for angular to load in BOM spec
2019-02-25 13:14:57 +01:00
Pau Pérez Fabregat
6004d09698 Merge pull request #3538 from Matt-Yorkley/flaky/shipping_methods_spec
Adjust expectations in flaky spec
2019-02-25 12:50:48 +01:00
Pau Pérez Fabregat
8a855edbda Merge pull request #3527 from luisramos0/2-0-fix-admin-edit-order-page
[Spree Upgrade] Fix edit ship method and tracking number in backoffice order page
2019-02-25 12:20:46 +01:00
Matt-Yorkley
6e77afbf35 Adjust expectations in flaky spec 2019-02-25 11:08:10 +00:00
Pau Pérez Fabregat
aed9c41b0d Merge pull request #3394 from mkllnk/3021-update-soft-delete
[Spree upgrade] 3021 update soft delete
2019-02-25 11:58:41 +01:00
Pau Pérez Fabregat
4e180f9f43 Merge pull request #3517 from openfoodfoundation/dependabot/bundler/oj-3.7.9
Bump oj from 3.7.8 to 3.7.9
2019-02-25 11:37:43 +01:00
Pau Pérez Fabregat
59962bbfb1 Merge pull request #3540 from openfoodfoundation/transifex
Transifex
2019-02-25 11:36:56 +01:00
Matt-Yorkley
bbfe71fd27 Improve readability and add code comment 2019-02-25 10:27:34 +00:00
Transifex-Openfoodnetwork
021220514e Updating translations for config/locales/ca.yml 2019-02-25 21:11:12 +11:00
luisramos0
963fddf159 Add missing translations
These translations are missing in v2 but some will also make v1 better
2019-02-24 22:29:44 +00:00
luisramos0
f40ff61f97 Move all en.yml entries added so far to v2 to master so that we can start the translation process now 2019-02-24 22:28:30 +00:00
Matt-Yorkley
627b101be9 Don't process proxy_order if the order has been cancelled 2019-02-24 12:06:58 +00:00
Matt-Yorkley
ea8be0ab95 Fine-tune angular helper 2019-02-23 21:45:33 +00:00
Matt-Yorkley
c4b646c583 Wait for angular to load in BOM spec 2019-02-23 16:12:37 +00:00
luisramos0
ee8fe4b6b4 Move registration process translations to lazy lookups to better organize the en.yml file 2019-02-22 14:37:45 +00:00
luisramos0
0b1ea1beda Rename VariantOverride.use_producer_settings to VariantOverride.use_producer_stock_settings 2019-02-22 09:57:21 +00:00
Pau Pérez Fabregat
439ea618df Merge pull request #3524 from luisramos0/2-0-stable-Feb20
[Spree Upgrade] Merging master into 2-0-stable (3rd run in Feb2019)
2019-02-22 09:01:40 +01:00
Pau Pérez Fabregat
632826a192 Merge pull request #3494 from luisramos0/break-oc-specs
Break order_cycle_spec.js in specific files and remove reference to product.count_on_hand in bulk_product_update_spec.js
2019-02-22 08:30:35 +01:00
luisramos0
45e5fed609 Improve scope_variant_to_hub code and spec by testing an invalid data state 2019-02-21 11:25:01 +00:00
Maikel
509e644cf7 Merge pull request #3526 from openfoodfoundation/transifex
Transifex
2019-02-21 16:05:21 +11:00
luisramos0
b73ca88811 Fix edit ship method and tracking number in backoffice order page
The data-hook is necessary to make spree js code work, in this case, activate click events on edit and save buttons
2019-02-20 23:57:57 +00:00
Transifex-Openfoodnetwork
4b21c9cb70 Updating translations for config/locales/en_CA.yml 2019-02-21 07:32:50 +11:00
luisramos0
5d51ad71b0 Merge branch 'master' into 2-0-stable-Feb20 2019-02-20 14:32:36 +00:00
Luis Ramos
34acaa4e03 Merge pull request #3425 from mkllnk/2783-product-importer-spec
Apply import defaults to variants of new products in Spree 2
2019-02-20 13:34:57 +00:00
Matt-Yorkley
f73221ed85 Use Dir::Tmpname.make_tmpname for threadsafe file naming 2019-02-20 13:10:47 +00:00
luisramos0
ef786adcfc Make variant_override.stock_overridden? simpler and add comment to explain relationship between count_on_hand and on_demand in a VO 2019-02-20 13:07:21 +00:00
Maikel
ec26948949 Merge pull request #3521 from openfoodfoundation/transifex
Transifex
2019-02-20 19:10:16 +11:00
Maikel
806226b404 Merge pull request #3496 from luisramos0/2-0-kill-allow-backorders
[Spree Upgrade] Remove allow_backorders from product stock verification
2019-02-20 13:09:05 +11:00
Transifex-Openfoodnetwork
aba4d742f6 Updating translations for config/locales/fr_CA.yml 2019-02-20 12:55:33 +11:00
luisramos0
5b4c986733 Add spec to cover variant scoping in order_cycle.items_bought_by_user 2019-02-20 00:05:28 +00:00
Maikel
e7e2d1d870 Merge pull request #3516 from openfoodfoundation/transifex
Transifex
2019-02-20 10:39:55 +11:00
Maikel Linke
8374c7dea4 Fix serializer spec for supplied products
In a previous commit we removed the now obsolete scope
Product.not_deleted. Calling Enterprise#supplied_products without
any scope does not issue a new SQL query but returns the products that
were present when the enterprise was loaded.

The fixed spec creates more products after loading the enterprise. So
the enterprise needs to be reloaded or the new products are not visible.
2019-02-20 08:45:58 +11:00
Transifex-Openfoodnetwork
7e59132bb2 Updating translations for config/locales/en_GB.yml 2019-02-20 06:50:52 +11:00
dependabot[bot]
47e154f2ac Bump oj from 3.7.8 to 3.7.9
Bumps [oj](https://github.com/ohler55/oj) from 3.7.8 to 3.7.9.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.7.8...v3.7.9)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-19 19:21:37 +00:00
Transifex-Openfoodnetwork
9688fe7540 Updating translations for config/locales/fr.yml 2019-02-20 06:15:01 +11:00
luisramos0
8ee14ccb4b Make variants_stock_levels return variants on_demand values 2019-02-19 11:56:02 +00:00
Maikel
f0a6f5ae3c Merge pull request #3514 from openfoodfoundation/transifex
Transifex
2019-02-19 15:40:30 +11:00
Transifex-Openfoodnetwork
0a50a74561 Updating translations for config/locales/en_US.yml 2019-02-19 15:23:20 +11:00
Maikel Linke
99f0be2f1c Remove unnecessary scope Variant.not_deleted
Spree made that scope default so that we don't need to define or call
it. There might be cases in which we were showing deleted variants and
now we are not, but I have not idea how to find them.

Related Spree commit:
- cd3add960e
2019-02-19 14:25:18 +11:00
Maikel Linke
b4d1e48693 Update soft-delete of variants
Spree changed their way of soft-deleting variants from calling `delete`
to calling `destroy`. We don't need our own implementation any more.
2019-02-19 14:25:18 +11:00
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
Maikel Linke
8f49f0006a Update products controller decorator with Spree
Spree changed the controller to deal with the updated soft-delete. This
commit brings these changes to our decorator.
2019-02-19 14:25:18 +11:00
Maikel Linke
5d828bd7ae Update soft-delete of products
Spree changed their way of soft-deleting products, variants and
some other models. `#destroy` is now soft-deleting and replaces
`#delete`.

This commit considers only products. Variants will follow in another
commit. The other models can be ignored, because we don't call `delete`
on them.
2019-02-19 14:25:18 +11:00
Maikel
bb4d42ef9d Merge pull request #3464 from openfoodfoundation/transifex
Transifex
2019-02-19 12:41:16 +11:00
Maikel
1b45033e33 Merge pull request #3506 from Matt-Yorkley/pi/parse_bom
Sanitize non-parsable BOM characters inserted by Excel
2019-02-19 11:24:11 +11:00
Maikel
be59a8ce32 Merge pull request #3434 from Matt-Yorkley/pi/fix_hash_merge
Fix hash merge for recording already created products by name
2019-02-19 11:21:49 +11:00
Maikel
b7abb72ed5 Merge pull request #3462 from luisramos0/delete-api-order-ctrl
Delete empty controller class eval and spec
2019-02-19 11:14:29 +11:00
Maikel
ae4d36b3ed Merge pull request #3451 from Matt-Yorkley/subs/currency
Use localized currency symbols in Subs pages
2019-02-19 09:55:36 +11:00
luisramos0
30967a5ffa Fix bulk product edit page. on_hand and on_demand should never be mixed on the server side, the UI can make the decision to show on_demand on the on_hand column if on_demand is true 2019-02-18 22:01:48 +00:00
luisramos0
12eab1bfa9 Merge variant_stock.count_on_hand into variant_stock.on_hand
variant.on_hand will not return infinity any longer if variant.on_demand is true. Clients of these methods will have to handle the combinations between on_hand and on_demand values
2019-02-18 22:00:16 +00:00
luisramos0
f0842fcbe5 Convert all calls to variant.count_on_hand to variant.on_hand 2019-02-18 21:54:07 +00:00
Matt-Yorkley
9705c249ac Sanitize no-parsable BOM characters inserted by Excel 2019-02-18 13:13:37 +00:00
luisramos0
5aee043b86 Remove allow_backorders from product stock verification because product.has_stock? already includes product.on_demand and in v2 allow_backorders becomes on_demand 2019-02-18 13:12:29 +00:00
Luis Ramos
8f192c39fb Merge pull request #3508 from luisramos0/2-0-green
[Spree Upgrade] Fix bulk_order_mgmt_spec - 2-0 build GREEN !!!
2019-02-18 13:05:17 +00:00
Kristina Lim
b0a82b0e21 Exclude $0 adjustments from report 2019-02-18 16:53:19 +08:00
Kristina Lim
36fd385f7d Add test showing $0 mandatory adjustments included 2019-02-18 16:53:19 +08:00
Kristina Lim
19f99255fa Exclude non-eligible entries from report 2019-02-18 16:53:18 +08:00
Kristina Lim
8ce7337c9d Add test showing $0 non-mandatory adjustments included 2019-02-18 16:53:18 +08:00
Kristina Lim
ca2c8e6ff2 Add test showing non-"eligible" entries included 2019-02-18 16:53:18 +08:00
Pau Pérez Fabregat
f5df10f5dc Merge pull request #3507 from openfoodfoundation/dependabot/bundler/selenium-webdriver-3.141.0
Bump selenium-webdriver from 3.12.0 to 3.141.0
2019-02-18 09:28:01 +01:00
luisramos0
a0bd290b6a Fix bulk_order_management spec by setting ship address on the stest order, this makes the order worflow work up to complete because the shipping methods will be validated against the address 2019-02-17 21:53:58 +00:00
Matt-Yorkley
09655b9f88 Fix nil values in on_hand column 2019-02-16 01:05:20 +00:00
dependabot[bot]
ed7015ae98 Bump selenium-webdriver from 3.12.0 to 3.141.0
Bumps [selenium-webdriver](https://github.com/SeleniumHQ/selenium) from 3.12.0 to 3.141.0.
- [Release notes](https://github.com/SeleniumHQ/selenium/releases)
- [Changelog](https://github.com/SeleniumHQ/selenium/blob/master/rb/CHANGES)
- [Commits](https://github.com/SeleniumHQ/selenium/compare/selenium-3.12.0...selenium-3.141.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-15 19:20:25 +00:00
Pau Pérez Fabregat
fb412cd9cd Merge pull request #3299 from luisramos0/2-0-admin-capture-payment
[Spree Upgrade] Fix order_with_totals_and_distribution factory by updating shipping fees
2019-02-15 18:37:43 +01:00
Pau Perez
4e35ea9149 Merge branch '2-0-stable' into 2-0-admin-capture-payment
* 2-0-stable:
  Perform delivery when checking deliveries in specs
2019-02-15 17:21:09 +01:00
Pau Pérez Fabregat
e67793b204 Merge pull request #3497 from coopdevs/fix-user-confirmation-spec
Perform delivery when checking deliveries in specs
2019-02-15 16:52:52 +01:00
luisramos0
75a79717cf Adapt scope_variant_to_hub to new VO rules where on_demand nil is seen as use_producer_settings 2019-02-15 14:05:24 +00:00
Transifex-Openfoodnetwork
9bf5531233 Updating translations for config/locales/nb.yml 2019-02-15 23:47:20 +11:00
Pau Pérez Fabregat
93c6271400 Merge pull request #3500 from openfoodfoundation/dependabot/bundler/bugsnag-5.5.0
Bump bugsnag from 4.1.0 to 5.5.0
2019-02-15 09:26:41 +01:00
Pau Pérez Fabregat
0a391783bc Merge pull request #3470 from kristinalim/fix/3426-intermittent_spec_failures
3426 [Flaky Spec] Address timing issues in enterprise users feature specs
2019-02-15 08:39:39 +01:00
Maikel Linke
6790e8895d Create sample payment methods with current environment 2019-02-15 16:44:55 +11:00
Maikel
d4589cc2f4 Merge pull request #3444 from mkllnk/3437-supplier-name-on-invoice
3437 supplier name on invoice
2019-02-15 16:31:29 +11:00
Matt-Yorkley
0c5cc23415 Fix hash merge for recording already created products by name 2019-02-14 21:38:18 +00:00
dependabot[bot]
7c5e58dd94 Bump bugsnag from 4.1.0 to 5.5.0
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 4.1.0 to 5.5.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/v4.1.0...v5.5.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-14 19:34:17 +00:00
dependabot[bot]
a369b48bf4 Bump stripe from 4.5.0 to 4.9.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 4.5.0 to 4.9.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/v4.5.0...v4.9.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-14 19:30:48 +00:00
Pau Pérez Fabregat
6f2b894cfe Merge pull request #3403 from openfoodfoundation/dependabot/bundler/dalli-2.7.9
Bump dalli from 2.7.2 to 2.7.9
2019-02-14 20:12:06 +01:00
Pau Pérez Fabregat
43fff8f18d Merge pull request #3460 from openfoodfoundation/dependabot/bundler/spinjs-rails-1.4
Bump spinjs-rails from 1.3 to 1.4
2019-02-14 19:42:33 +01:00
luisramos0
4a35b53b43 Remove dead overrides 2019-02-14 18:00:25 +00:00
Pau Pérez Fabregat
34020f7bf6 Merge pull request #3377 from openfoodfoundation/dependabot/bundler/i18n-js-3.2.1
Bump i18n-js from 3.1.0 to 3.2.1
2019-02-14 18:26:49 +01:00
Pau Perez
f29707fea3 Perform delivery when checking deliveries in specs
Otherwise checking `ActionMailer::Base.deliveries.count` won't see any.
2019-02-14 18:24:33 +01:00
Kristina Lim
af95e3871f Move check for table presence out of helper 2019-02-15 01:15:58 +08:00
Pau Perez
e5dadd1ab1 Merge branch '2-0-stable' into 2-0-admin-capture-payment
* 2-0-stable: (121 commits)
  Stub default value for other calls to File.exist?
  Add specs for error cases in shipments_controller_spec
  Move features/admin/reports/enterprise_fee_summaries_spec to xdescribe (will be fixed as part of spree upgrade phase 2)
  Add missing translation to fix shipping methods spec
  Test tagging polymorphism on a payment method
  Workaround Rails inheritance bug in Spree::Gateway
  Improve method names in shipments_controller_spec
  Move ProductImporter spec to xdescribe until all its specs are green (spree upgrade phase 2)
  Make bulk invoices part of spree upgrade phase 2
  Make Api::ShipmentsController#create re-use order.shipment if it exists Improve code and add specs to this controller
  Decorate spree api shipments controller to scope variants as they are added/removed from shipments
  Delete all Spree::Admin::LineItemsController customizations as they are no longer used
  Update spec/controllers/spree/orders_controller_spec.rb
  Fix broken spec from refactored method
  Wait for button to disappear before checking flash
  Use flash matcher in shipping method feature specs
  Add RSpec matchers for flash messages
  Do not expect modal open when checking spinner gone
  Fix layout violation in Spree::Ability decorator
  Fix description for feature flag example groups
  ...
2019-02-14 17:41:54 +01:00
Pau Perez
caf4441fa3 Do not mutate config's state in specs 2019-02-14 17:01:43 +01:00
Pau Perez
609ff737ca Fix and simplify feature spec 2019-02-14 17:01:43 +01:00
Pau Perez
e9173f440f Associate shipment to appropriate order in specs 2019-02-14 17:01:43 +01:00
luisramos0
bf4ce90f98 Add product.on_hand and product.on_demand positive test, these should be returned if no variants are provided in the input
Also, removed product.count_on_hand negative test (there's no such attriubte in v2) and added product.on_hand, this should not be returned because a variant is provided
2019-02-14 15:58:15 +00:00
luisramos0
bfa0734cc6 Break order_cycle_spec.js in specific files like create controller, edit controller and services
Move bulk_product_update_spec.js to its apropriate place under /admin
2019-02-14 15:57:40 +00:00
Pau Pérez Fabregat
0a885af7a6 Merge pull request #3481 from mkllnk/simplify-stripe-creation-in-specs
Simplify specs with stripe factory
2019-02-14 09:42:05 +01:00
Pau Pérez Fabregat
fce92090db Merge pull request #3479 from luisramos0/2-0-stable-Feb12
[Spree Upgrade] Merging master into 2-0-stable (2nd run in Feb2019)
2019-02-14 09:40:28 +01:00
Transifex-Openfoodnetwork
a71c89f70e Updating translations for config/locales/en_GB.yml 2019-02-14 18:01:18 +11:00
Transifex-Openfoodnetwork
19568577f5 Updating translations for config/locales/es.yml 2019-02-14 18:01:18 +11:00
Transifex-Openfoodnetwork
71b24ba314 Updating translations for config/locales/ca.yml 2019-02-14 18:01:17 +11:00
Maikel
9058729a9d Merge pull request #3459 from openfoodfoundation/dependabot/bundler/rspec-rails-3.8.2
Bump rspec-rails from 3.8.1 to 3.8.2
2019-02-14 17:18:07 +11:00
Maikel Linke
87abfcd704 Simplify shopping spec 2019-02-14 11:42:46 +11:00
Pau Pérez Fabregat
2d2e25b9fa Merge pull request #3484 from coopdevs/fix-invoices-controller-spec
Stub default value for other calls to File.exist?
2019-02-13 20:32:13 +01:00
Luis Ramos
c6cd1b7ef2 Merge pull request #3471 from luisramos0/2-0-bulk-invoices-phase2
[Spree Upgrade] Make Bulk Invoices part of spree upgrade phase 2
2019-02-13 12:37:15 +00:00
Luis Ramos
576c203679 Merge pull request #3370 from mkllnk/3121-spree-gateway-inheritance
[Spree upgrade] Workaround Rails inheritance bug in Spree::Gateway
2019-02-13 12:27:59 +00:00
Pau Perez
59e27ffc0e Stub default value for other calls to File.exist?
This fixes the following error

```
 1) Spree::Admin::InvoicesController#poll when the file is available returns true
     Failure/Error: spree_get :poll, invoice_id: invoice_id

       #<File (class)> received :exist? with unexpected arguments
         expected: ("tmp/invoices/479186263.pdf")
              got: ("/home/pau/dev/openfoodnetwork/tmp/cache/paralleltests/3B7/CD1/spree%2Fapp_configuration%2Fredirect_https_to_http")
        Please stub a default value first if message might be received with other args as well.
     # ./spec/controllers/spree/admin/invoices_controller_spec.rb:28:in `block (4 levels) in <top (required)>'
     # -e:1:in `<main>'
```

`paralleltests` also relies on `File.exist?` and so stubbing it breaks
it unless we purposefully allow other calls.
2019-02-13 13:16:28 +01:00
Pau Pérez Fabregat
1b7edab3d6 Merge pull request #3441 from luisramos0/2-0-shipments-api
[Spree Upgrade] Adapt api shipments controller to OFN by scoping variants before each action
2019-02-13 12:36:08 +01:00
luisramos0
5ccbf7b3ca Add specs for error cases in shipments_controller_spec 2019-02-13 10:37:21 +00:00
luisramos0
728ed2c202 Move features/admin/reports/enterprise_fee_summaries_spec to xdescribe (will be fixed as part of spree upgrade phase 2) 2019-02-13 09:06:10 +00:00
luisramos0
ff2bf76e38 Add missing translation to fix shipping methods spec 2019-02-13 09:05:35 +00:00
Maikel Linke
5f5b0aaabf Simplify specs with stripe factory 2019-02-13 18:34:22 +11:00
Maikel Linke
612ea4c781 Simplify spec of invoice creation 2019-02-13 17:55:48 +11:00
Maikel
a36dc13192 Add issue templates for tech debt 2019-02-13 17:26:56 +11:00
Maikel Linke
3b9fdfa7ac Test tagging polymorphism on a payment method 2019-02-13 16:31:38 +11:00
Maikel Linke
9044bf60b9 Workaround Rails inheritance bug in Spree::Gateway
Due to a bug in ActiveRecord we need to load the tagging code in Gateway which
should have inherited it from its parent PaymentMethod.
We have to call it before loading the PaymentMethod decorator because the
tagging code won't load twice within the inheritance chain.

https://github.com/openfoodfoundation/openfoodnetwork/issues/3121
2019-02-13 14:47:44 +11:00
Pau Pérez Fabregat
bda5eb1b1f Merge pull request #3337 from kristinalim/feature-enterprise_fees_report-order_based_calculator_bug
3283 [Enterprise Fee Summary] Fix values when calculator is order-based
2019-02-12 20:07:57 +01:00
luisramos0
ba8096ff85 Improve method names in shipments_controller_spec 2019-02-12 17:31:58 +00:00
luisramos0
c652cfe4d5 Merge branch 'master' into 2-0-stable-Feb12 2019-02-12 16:03:33 +00:00
Kristina Lim
5e8a336e24 Initialize data representation classes with data
There is no more need to pass the summarizer.
2019-02-13 01:51:34 +11:00
Kristina Lim
ddc788ed5d Move data representation translations to class 2019-02-13 01:51:34 +11:00
Kristina Lim
bc95560598 Add descriptions for data representation classes 2019-02-13 01:51:33 +11:00
Kristina Lim
664943a6e5 Include UsingEnterpriseFee instead of inheriting 2019-02-13 01:51:33 +11:00
Kristina Lim
b9c144bb1f Prepare to change AssociatedEnterpriseFee to module
The superclasses will include this module, instead of inheriting the class.
2019-02-13 01:51:32 +11:00
Kristina Lim
373e3e1039 Simplify name of SQL data summarizer class 2019-02-13 01:51:32 +11:00
Kristina Lim
7a76355cfe Separate summarizing of SQL data by source 2019-02-13 01:51:32 +11:00
Kristina Lim
c4801aafd4 Fix Fee Calc on Transfer Through and Tax Category
For exchange fees with calculator that is order-based:

* "Fee Calc on Transfer Through" should show "Entire Orders through
  DISTRIBUTOR_NAME".
* For tax category:
  a. If the enterprise fee itself has a tax category, this is used.
  b. If the enterprise fee inherits the product's tax category, this is
     "Various".
  c. If the enterprise fee has no tax, this is blank.

For coordinator fees:

* "Fee Calc on Transfer Through" should be "All".
* For tax category: Same as abova.
2019-02-13 01:51:31 +11:00
Kristina Lim
8f65beeb0b Clarify method name in report scope 2019-02-13 01:51:31 +11:00
Kristina Lim
e550be9bda Add test for using order-based exchange fees
This is not filling the "Fee Calc on Transfer Through" column. This will
be addressed in another commit.
2019-02-13 01:51:31 +11:00
Kristina Lim
0212454041 Refactor SQL result summarizer for report 2019-02-13 01:51:30 +11:00
Kristina Lim
06ba5182b4 Add flat rate calculator traits to related factories 2019-02-13 01:51:30 +11:00
dependabot[bot]
0fc9ead934 Bump i18n-js from 3.1.0 to 3.2.1
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.1.0 to 3.2.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.1.0...v3.2.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-12 13:19:50 +00:00
Pau Pérez Fabregat
1f72eb9f68 Merge pull request #3378 from kevinchristianson/active-products-translation-fix
Add missing 'active products' translation on dashboard
2019-02-12 14:15:53 +01:00
Pau Pérez Fabregat
a0c144fd0c Merge pull request #3415 from openfoodfoundation/feature/enterprise_fee_summary
[Enterprise Fee Summary] Merge "Enterprise Fee Summary" report to master
2019-02-12 13:58:47 +01:00
Pau Pérez Fabregat
b6ca0ba24f Merge pull request #3456 from coopdevs/fix-last-orders-controller-spec
Fix orders controller spec
2019-02-12 12:47:15 +01:00
Pau Perez
24189ca88e Create shipping_rate earlier for callback to work
If the shipping_rate is not created at the time the `#after_save`'s
`#ensure_correct_adjustment` callback is executed its call to
`shipping_method.create_adjustment` won't be executed either.

As a result, the OrderUpdater wasn't able to see any adjustments related
to the shipment causing the order total to be outdated.
2019-02-12 12:11:55 +01:00
luisramos0
935c8cb0ce Move ProductImporter spec to xdescribe until all its specs are green (spree upgrade phase 2) 2019-02-12 10:38:03 +00:00
luisramos0
7c0b21eb83 Make bulk invoices part of spree upgrade phase 2 2019-02-12 10:37:22 +00:00
Pau Perez
ab0b759567 Merge branch '2-0-stable' into 2-0-admin-capture-payment
* 2-0-stable: (208 commits)
  Re implement orders ctrl update method so we can change redirection logic and add specs for it
  Improve readability in admin/orders_spec
  Add line items adjustments (order.price_adjustments) to the order edit page so that user is aware of adjustments included in the price like for example tax rates
  Adapt variants auto complete to spree v2 code with shipments
  Adapt customer search override to spree v2 and fix customer details spec in admin orders spec
  Fix distributor change spec in admin orders spec
  Fix admin orders spec non tax adjustments by adapting to new view
  Fix failing specs due to Spree 2's new order admin page Add missing form tag and OC and shops injectors on order form to make the OC field, the distributor field and the update button work
  Use Spree routes
  Fix shop accidentally becoming order coordinator
  Match date format in spec with import date filter
  Make in_stock? work for both variants and overrides by moving it from VariantStock to variant_decorator.
  Add unit test for VariantStock.can_supply?
  Remove rescue from products_reset_strategy in product import: if setting count_on_hand fails the import will raise a RuntimeError
  Change product import's product_reset_strategy from depending on the inexistent variant.count_on_hand DB field and instead make individual calls to variant.count_on_hand= defined in VariantStock. Also, added spec to test return value of the reset method: it should return number of updated records.
  Upgrade views to Spree 2 and apply overrides
  Updating translations for config/locales/en_US.yml
  Update name spaces for rake tasks to shorter 'ofn'.
  Refactor checking no preview image in specs
  Refactor checking of preview image path in specs
  ...
2019-02-12 11:12:40 +01:00
luisramos0
58ea28ebb4 Make Api::ShipmentsController#create re-use order.shipment if it exists
Improve code and add specs to this controller
2019-02-12 10:09:00 +00:00
luisramos0
77b390a836 Decorate spree api shipments controller to scope variants as they are added/removed from shipments 2019-02-12 10:09:00 +00:00
luisramos0
0f44beb477 Delete all Spree::Admin::LineItemsController customizations as they are no longer used 2019-02-12 10:09:00 +00:00
Pau Pérez Fabregat
a6c5e3423f Merge pull request #3474 from Matt-Yorkley/pi/broken_build
Fix broken spec from refactored method
2019-02-12 11:03:28 +01:00
Pau Pérez Fabregat
0cc2bd052e Merge pull request #3436 from luisramos0/2-0-orders-edit
[Spree Upgrade] Fix admin new order page flow (from order details to customer details)
2019-02-12 10:35:25 +01:00
Pau Pérez Fabregat
b51ad35cb1 Merge pull request #3445 from luisramos0/2-0-order-adjusts
[Spree Upgrade] Fix adjustments sections in admin order edit page
2019-02-12 10:16:30 +01:00
Pau Pérez Fabregat
92dca0cdfa Merge pull request #3194 from HugsDaniel/3109-fix-orders-new
[Spree Upgrade] Fix admin new order page
2019-02-12 09:58:29 +01:00
Luis Ramos
edd1da7d50 Update spec/controllers/spree/orders_controller_spec.rb
Fix typo in doc

Co-Authored-By: sauloperez <saulopefa@gmail.com>
2019-02-12 09:12:03 +01:00
Matt-Yorkley
097ffba323 Fix broken spec from refactored method 2019-02-11 23:57:13 +00:00
Pau Pérez Fabregat
4165ba5cdb Merge pull request #3463 from coopdevs/enable-catalan
Import Catalan translation from Transifex
2019-02-11 18:13:50 +01:00
Luis Ramos
dd44d6a0ca Merge pull request #3355 from luisramos0/2-0-pord-importer-spec
[Spree Upgrade] Phase 2 - Fix product_importer spec
2019-02-11 15:28:47 +00:00
Pau Perez
990de63728 Merge branch 'master' into active-products-translation-fix
* master: (46 commits)
  Wait for button to disappear before checking flash
  Use flash matcher in shipping method feature specs
  Add RSpec matchers for flash messages
  Do not expect modal open when checking spinner gone
  Update issue templates
  Update all locales with the latest Transifex translations
  Do not show table until first time dereferencing is done
  Remove unused have_no_selector argument in feature test
  Compile row ID with higher priority
  Compile edit link with higher priority
  Support selecting date in next months
  Improve sync between keyword filter and selecting all
  Wait for datepicker to associate and open before selecting date
  Update cancan permissions for second iteration of bulk invoices
  Fix shop accidentally becoming order coordinator
  Match date format in spec with import date filter
  Update name spaces for rake tasks to shorter 'ofn'.
  Refactor checking no preview image in specs
  Refactor checking of preview image path in specs
  Fix race condition in enterprise image feature specs
  ...
2019-02-11 16:12:52 +01:00
Pau Pérez Fabregat
9d065c8a0b Merge pull request #3233 from Matt-Yorkley/pi/inventories
Pi/inventories
2019-02-11 16:10:33 +01:00
Pau Pérez Fabregat
da09c8f86c Merge pull request #3467 from kristinalim/fix/3455-intermittent_spec_failure
3455 [Flaky Spec] Do not expect modal still open when checking that the spinner is gone
2019-02-11 15:58:22 +01:00
Pau Pérez Fabregat
b508d51406 Merge pull request #3469 from kristinalim/fix/3468-intermittent_spec_failures
3468 [Flaky Spec] Check for presence of flash div before trying to get its text
2019-02-11 15:54:33 +01:00
luisramos0
acc99fc9bb Improve readability of cached_product_renderer and respective spec 2019-02-11 11:46:04 +00:00
Kristina Lim
a876c2ab9f Address timing issues in enterprise roles specs 2019-02-11 13:02:40 +08:00
luisramos0
ad0e5bb093 Re implement orders ctrl update method so we can change redirection logic and add specs for it 2019-02-10 15:31:01 +00:00
Kristina Lim
0032a237a2 Wait for button to disappear before checking flash 2019-02-10 22:08:18 +08:00
Kristina Lim
175264f41f Use flash matcher in shipping method feature specs 2019-02-10 22:08:18 +08:00
Kristina Lim
e14c60c1c1 Add RSpec matchers for flash messages 2019-02-10 22:08:18 +08:00
Kristina Lim
f143540d0c Do not expect modal open when checking spinner gone
The element referenced in the following might no longer be visible:

  within "div.reveal-modal"
2019-02-09 22:40:40 +08:00
Kristina Lim
b6be8c48d1 Fix layout violation in Spree::Ability decorator 2019-02-08 21:26:39 +00:00
Kristina Lim
de30cf1198 Fix description for feature flag example groups 2019-02-08 21:26:39 +00:00
Kristina Lim
461b5725d1 Hide report link and resource from non-superadmins 2019-02-08 21:26:38 +00:00
Kristina Lim
1d3f4aa28a Add feature flag for enterprise fee summary 2019-02-08 21:26:38 +00:00
Kristina Lim
f59834ddc8 Use receiver as "Fee Calc on Transfer Through" for outgoing exchanges 2019-02-08 21:26:38 +00:00
Kristina Lim
ddf15f1d30 Add scenario test for enterprise fee summary
Add test for more complex scenario where there is a coordinator and
distributor fee for an incoming exchange, and a producer and coordinator
fee for an outgoing exchange.
2019-02-08 21:26:38 +00:00
Kristina Lim
c92d202612 Rename files for factories in spec/factories/
Make these follow the "#{SINGULAR_OBJECT}_factory.rb" convention.
2019-02-08 21:26:38 +00:00
Kristina Lim
625069cb5a Add :per_item factory trait to shipping and payment methods 2019-02-08 21:26:38 +00:00
Kristina Lim
d2e49b8b49 Move variant setup to new factory trait 2019-02-08 21:26:38 +00:00
Kristina Lim
f36d13a736 Rename helper for setting up incomplete order 2019-02-08 21:26:38 +00:00
Kristina Lim
ce030aeb07 Move order setup to new factory traits 2019-02-08 21:26:38 +00:00
Kristina Lim
a3aa594c42 Use enterprise fee factory trait where applicable 2019-02-08 21:26:38 +00:00
Kristina Lim
5dda3b67eb Use factory for tax category in entperprise fee summary tests 2019-02-08 21:26:38 +00:00
Kristina Lim
61ec43f868 Add enterprise fee factory trait for per item rate
We should not presume what is not default for an enterprise fee object.
2019-02-08 21:26:38 +00:00
Kristina Lim
53c458f817 Clean up setup data for enterprise fee summary tests 2019-02-08 21:26:38 +00:00
Kristina Lim
4a73b1d26c Do not include incomplete orders in report 2019-02-08 21:26:38 +00:00
Kristina Lim
eaa7800427 Do not assign I18n translation to constants
The preferred language could change dynamically.
2019-02-08 21:26:38 +00:00
Kristina Lim
6378afdddb Address Rubocop violation 2019-02-08 21:26:38 +00:00
Kristina Lim
c81be75530 Move engine libraries except Engine and Version to services 2019-02-08 21:26:38 +00:00
Kristina Lim
3e499faa7c Do not use ReportData::EnterpriseFeeTypeTotals 2019-02-08 21:26:38 +00:00
Kristina Lim
3f84d0008a Move some in OpenFoodNetwork to engine services
This removes the OpenFoodNetwork namespace from these too.
2019-02-08 21:26:38 +00:00
Kristina Lim
95e3a2f45d Move authorization to the ::Parameters class 2019-02-08 21:26:38 +00:00
Kristina Lim
c61a83faca Move routes for enterprise fee summary to engine 2019-02-08 21:26:38 +00:00
Kristina Lim
9e035efd50 Render enterprise fee report directly in renderer 2019-02-08 21:26:38 +00:00
Kristina Lim
c8b154b12a Separate enterprise fee summary action
Split the previous "index" action into "new" and "create" actions.
2019-02-08 21:26:38 +00:00
Kristina Lim
da914289ea Copy spree/admin/reports#index into application 2019-02-08 21:26:38 +00:00
Kristina Lim
a17fa8013f Clean up I18n scope in feature specs for report 2019-02-08 21:26:38 +00:00
Kristina Lim
c0e6b70131 Rename EnterpriseFeeSummaryReportController
Remove "Report" because this is redundant, and pluralize the resource
name.
2019-02-08 21:26:38 +00:00
Kristina Lim
207b6c7f30 Use shorthand for RSpec expect(subject).to 2019-02-08 21:26:38 +00:00
Kristina Lim
2063752b97 Improve specs for Enterprise Fee Summary
This also addresses a spec that has failed over the rebasing.
2019-02-08 21:26:38 +00:00
Kristina Lim
2bf38b3ea1 Improve code based on Rubocop recommendations 2019-02-08 21:26:38 +00:00
Kristina Lim
552bf1b9f7 Move report list to own class 2019-02-08 21:26:38 +00:00
Kristina Lim
b78e2b4720 Move lib files for enterprise fee summary to engine 2019-02-08 21:26:38 +00:00
Kristina Lim
0cdcd96bb5 Add skeleton for OrderManagement engine 2019-02-08 21:26:38 +00:00
Kristina Lim
dcb1d9fe25 Add feature tests for enterprise fee summary 2019-02-08 21:26:37 +00:00
Kristina Lim
edf0b0df76 Add navigation item for enterprise fee summary 2019-02-08 21:26:37 +00:00
Kristina Lim
d3e9a53120 Filter enterprise fee summary for user permissions 2019-02-08 21:26:37 +00:00
Kristina Lim
8ad53055c7 Allow non-admins to see enterprise fee summary
Relax controller permissions for enterprise fee summary. Even non-admin
enterprise users should be able to see these reports.

Filtering of data based on permissions is handled in:

* OrderManagement::Reports::EnterpriseFeeSummary::Authorizer and
* OrderManagement::Reports::EnterpriseFeeSummary::Permissions.
2019-02-08 21:26:37 +00:00
Kristina Lim
f81f4b7e4a Authorize filters before generating enterprise fee report 2019-02-08 21:26:37 +00:00
Kristina Lim
9ce313c7f5 Define filter authorizer for enterprise fee report 2019-02-08 21:26:37 +00:00
Kristina Lim
cd3e258b59 Rename report authorizers to reflect permissions 2019-02-08 21:26:37 +00:00
Kristina Lim
469988856d Define permissions for enterprise fee summary 2019-02-08 21:26:37 +00:00
Kristina Lim
5fce9d0a7d Add multi-distributor scope to shipping and payment methods 2019-02-08 21:26:37 +00:00
Kristina Lim
24ab2e7fb0 Add filtering to enterprise fee summary 2019-02-08 21:26:37 +00:00
Kristina Lim
2407531957 Make more code for report tests reusable 2019-02-08 21:26:37 +00:00
Kristina Lim
d573dc5023 Make order builder for enterprise fee summary flexible
This is in preparation for tests for filtering the report.
2019-02-08 21:26:37 +00:00
Kristina Lim
4a00aceba2 Include shipping fees in enterprise fee summary 2019-02-08 21:26:37 +00:00
Kristina Lim
1273cc085b Include payment fees in enterprise fee summary 2019-02-08 21:26:37 +00:00
Kristina Lim
7d74ddc85b Add HTML view for enterprise fee summary report 2019-02-08 21:26:37 +00:00
Kristina Lim
418050c1b8 Remove blank strings from array report parameters
Remove the blank strings that Rails multiple selects add by default to
make sure that blank lists are still submitted to the server as arrays
instead of nil.

https://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-select
2019-02-08 21:26:37 +00:00
Kristina Lim
6e03ab03f5 Extract general behaviour for report parameters 2019-02-08 21:26:37 +00:00
Kristina Lim
34dc16f8c9 Base filter options from initial authorizer object 2019-02-08 21:26:37 +00:00
Kristina Lim
bd2b4c0134 Add enterprise fee summary form without options
The objects will be filled in another commit. This simply sets up the
filters UI for now.
2019-02-08 21:26:37 +00:00
Kristina Lim
ec81e4221f Add basic action for enterprise fee summary 2019-02-08 21:26:37 +00:00
Kristina Lim
b7439d2574 Fix sort for nil cells in enterprise fee summary 2019-02-08 21:26:37 +00:00
Kristina Lim
5b6bbc3920 Add generation of CSV renderer filename 2019-02-08 21:26:37 +00:00
Kristina Lim
ed2b8e9b9f Add CSV renderer for enterprise fee summary report 2019-02-08 21:26:37 +00:00
Kristina Lim
00e70733b0 Add test data for enterprise fee summary report 2019-02-08 21:26:37 +00:00
Kristina Lim
e7ed625d5a Add processing of enterprise fee summary from DB 2019-02-08 21:26:37 +00:00
Kristina Lim
faf7079780 Specify sort order of enterprise fee totals data 2019-02-08 21:26:37 +00:00
Kristina Lim
3763cb98a3 Add data classes for Enterprise Fee Summary report 2019-02-08 21:26:37 +00:00
Kristina Lim
a097640464 Add basic form object for enterprise fee summary 2019-02-08 21:26:36 +00:00
Kristina Lim
519a7d2ee6 Add datetime and integer array validator matchers 2019-02-08 21:26:36 +00:00
Kristina Lim
f6e8f18d89 Add validator for integer arrays
Example usage:

    validates :related_post_ids, integer_array: true
2019-02-08 21:26:36 +00:00
Kristina Lim
de9cff6fc2 Add validator for datetime string
Example usage:

    validates :start_at, date_time_string: true
2019-02-08 21:26:36 +00:00
Pau Perez
f998748634 Clarify why we end up with 3 adjustments
And the second one is open.
2019-02-08 18:16:00 +01:00
Pau Perez
7359789903 Import Catalan translation from Transifex
Although we've started translating to Catalan and focused on it
recently, we never imported the file in the app thus the language menu
showed "English" for the "ca" locale and clicking on it switched to
English as well instead of Catalan.
2019-02-08 15:22:59 +01:00
luisramos0
3dc75c88d2 Delete empty controller class eval and spec. Useless left overs from 0ad2978926 2019-02-08 09:29:58 +00:00
Danni M
8ff5f9055b Update issue templates
I've created 3 types of templates based on those in the wiki and the default (bug) issue template. These can be edited or additional ones added at your leisure.

I also added the OFN software instance and version to the bugs template
2019-02-08 16:58:32 +11:00
Matt-Yorkley
f9ea93933e Use localizeCurrency filter in subscriptions 2019-02-07 22:58:49 +00:00
Matt-Yorkley
5582160e73 Add localizeCurrency filter to admin and inject currencyConfig data 2019-02-07 22:55:08 +00:00
luisramos0
1b4666fc6a Add checkbox to cache settings to disable products cache 2019-02-07 20:06:27 +00:00
dependabot[bot]
72cd0537fb Bump spinjs-rails from 1.3 to 1.4
Bumps [spinjs-rails](https://github.com/dnagir/spinjs-rails) from 1.3 to 1.4.
- [Release notes](https://github.com/dnagir/spinjs-rails/releases)
- [Commits](https://github.com/dnagir/spinjs-rails/compare/v1.3...v1.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-07 19:39:54 +00:00
dependabot[bot]
492b1c905f Bump rspec-rails from 3.8.1 to 3.8.2
Bumps [rspec-rails](https://github.com/rspec/rspec-rails) from 3.8.1 to 3.8.2.
- [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.8.1...v3.8.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-02-07 19:39:25 +00:00
Pau Pérez Fabregat
88247064c4 Merge pull request #3397 from luisramos0/2-0-subs-allow-backorders
[Spree Upgrade] Remove allow backorders from subscriptions specs
2019-02-07 20:32:49 +01:00
luisramos0
93aabf6741 Update all locales with the latest Transifex translations 2019-02-07 19:26:00 +00:00
Pau Pérez Fabregat
676fa3d84d Merge pull request #3433 from Matt-Yorkley/bi/user_permission
Update cancan permissions for second iteration of bulk invoices
2019-02-07 20:17:34 +01:00
Pau Perez
cde465edad Fix orders controller spec 2019-02-07 16:05:18 +01:00
Pau Pérez Fabregat
9613aa5a4d Merge pull request #3400 from luisramos0/2-0-ship-methods
[Spree Upgrade] Change app config to keep using ofn customized spree v1 shipping method calculators, not the new spree v2 ones
2019-02-07 15:41:06 +01:00
Pau Pérez Fabregat
fbde4a6c97 Merge pull request #3328 from luisramos0/2-0-pi-prod-reset
[Spree Upgrade] Phase 2 - Product Import - Adapt product_reset_strategy
2019-02-07 15:35:44 +01:00
Pau Pérez Fabregat
259a5b211b Merge pull request #3429 from luisramos0/2-0-in-stock
[Spree Upgrade] 3428 Fix in_stock? and shopping/variant_overrides_spec
2019-02-07 15:25:43 +01:00
Pau Pérez Fabregat
56425139c0 Merge pull request #3439 from luisramos0/2-0-stable-Feb5
[Spree Upgrade] Merging master into 2-0-stable (1st run in Feb2019)
2019-02-07 15:09:23 +01:00
luisramos0
fe0fb22814 Improve readability in admin/orders_spec 2019-02-07 13:45:04 +00:00
Luis Ramos
8c0683938a Merge pull request #3416 from kristinalim/fix/race_condition_in_bulk_order_management_feature_specs
3417,2962,3358 [Flaky Spec] Address some race conditions for bulk order management specs
2019-02-07 11:28:54 +00:00
luisramos0
3ed6aea9ab Add line items adjustments (order.price_adjustments) to the order edit page so that user is aware of adjustments included in the price like for example tax rates
This change happens in spree v2.2 together with other changes (like adding the, not yet available in v2.0, shipment_adjustments this way). See commit for more details: 636d87dd77
2019-02-07 11:14:45 +00:00
Maikel Linke
5ee3dbf9f2 Re-use renderer object 2019-02-07 10:12:06 +11:00
Luis Ramos
2d0df7ffdf Update app/controllers/spree/admin/orders_controller_decorator.rb
Co-Authored-By: mkllnk <maikel@email.org.au>
2019-02-07 09:19:19 +11:00
Kristina Lim
0030428647 Do not show table until first time dereferencing is done 2019-02-07 04:39:45 +08:00
Kristina Lim
428e58f8f7 Remove unused have_no_selector argument in feature test 2019-02-07 04:39:44 +08:00
Kristina Lim
35ecbe1584 Compile row ID with higher priority 2019-02-07 04:39:44 +08:00
Kristina Lim
ed5856afa4 Compile edit link with higher priority 2019-02-07 04:39:44 +08:00
Kristina Lim
fdede83086 Support selecting date in next months
This was causing failures when selecting tomorrow when running tests on
the last day of the month.
2019-02-07 04:39:43 +08:00
Kristina Lim
bb51f7e36b Improve sync between keyword filter and selecting all 2019-02-07 04:36:28 +08:00
Kristina Lim
3eedee313e Wait for datepicker to associate and open before selecting date 2019-02-07 04:36:24 +08:00
Pau Pérez Fabregat
8f63be9519 Merge pull request #2733 from kristinalim/fix-subscription_should_not_require_future_oc
Reduce restrictions for adding a variant to a subscription
2019-02-06 21:24:57 +01:00
Pau Pérez Fabregat
cd1f469588 Merge pull request #3389 from openfoodfoundation/dependabot/bundler/redcarpet-3.4.0
Bump redcarpet from 3.2.3 to 3.4.0
2019-02-06 21:23:21 +01:00
Pau Pérez Fabregat
433d10c42f Merge pull request #3386 from leandroalemao/fix-moment-deprecation-warning
[ISSUE-3348] LC: Fix moment.js deprecation warning
2019-02-06 21:22:58 +01:00
Pau Pérez Fabregat
b4ba9e65e1 Merge pull request #3367 from openfoodfoundation/dependabot/bundler/jwt-2.1.0
Bump jwt from 1.5.6 to 2.1.0
2019-02-06 21:22:37 +01:00
Pau Pérez Fabregat
6239397589 Merge pull request #3357 from openfoodfoundation/dependabot/bundler/stripe-4.5.0
Bump stripe from 3.3.2 to 4.5.0
2019-02-06 21:22:19 +01:00
Matt-Yorkley
2c3eeec2b9 Update cancan permissions for second iteration of bulk invoices 2019-02-06 18:19:53 +00:00
Luis Ramos
11304ef6fd Merge pull request #3371 from luisramos0/2-0-xero-invoices
[Spree Upgrade] Fix xero invoices report specs
2019-02-06 16:48:49 +00:00
Maikel Linke
4a3e5f1d0a Print supplier name on invoice 2019-02-06 15:07:05 +11:00
Maikel Linke
3aea16e9ba Cover alternative invoice template with specs 2019-02-06 15:06:44 +11:00
Maikel Linke
d97fa60c31 Remove code duplication and test PDF creation 2019-02-06 14:53:05 +11:00
Maikel Linke
7c5b430a37 Test execution of BulkInvoiceService#start_pdf_job
The spec just tested if a job was enqueued, but not if the job can
actually be executed. Unfortunately, this test is quite slow.
2019-02-06 11:26:22 +11:00
luisramos0
1b8445eb99 Merge branch 'master' into 2-0-stable-Feb5 2019-02-05 11:16:23 +00:00
Maikel Linke
cc46bfd002 Rename namespace to ofn 2019-02-05 16:30:46 +11:00
Maikel Linke
659aa269de Fix creation of sample payment methods on staging
Due to an unknown reason my chosen way of creating calculator and
assigning it to a payment method didn't work in staging environment even
though it was working in development.

Without diving deeper into the cause of this, I decided to change the
record assignments and fix the problem that way.
2019-02-05 16:24:30 +11:00
Maikel Linke
7a723d9061 Use new sample data during setup 2019-02-05 16:24:30 +11:00
Maikel Linke
c6393b6077 Warn about deprecation via ActiveSupport 2019-02-05 16:23:17 +11:00
Maikel Linke
c3029c612a Fix sample product creation and use bang methods
Mistakes like the missing fee when creating product distributions were
hidden, because I didn't use the bang methods to create records.
2019-02-05 16:23:17 +11:00
Maikel Linke
1d07327325 Add descriptions to enterprises 2019-02-05 16:23:17 +11:00
Maikel Linke
4b389ba357 Move sample data factories into their own files 2019-02-05 16:23:17 +11:00
Maikel Linke
3ab02d90df Move sample data address module to own file 2019-02-05 16:23:17 +11:00
Maikel Linke
bec9f5eb2e Move sample data logger to own module 2019-02-05 16:23:17 +11:00
Maikel Linke
fae05ff713 Deprecate old sample data task 2019-02-05 16:23:17 +11:00
Maikel Linke
876e73a989 Rewrite task to generate sample data
https://github.com/openfoodfoundation/openfoodnetwork/issues/2072

We need more and better structured sample data for dev testing and to
bootstrap staging data. This new task aims to replace
openfoodnetwork:dev:sample_data.
2019-02-05 16:23:17 +11:00
Maikel
a910468fc7 Merge pull request #3418 from Jefferson-Faseler/change-rake-tasks-namespace
Update Rake task namespace
2019-02-05 16:21:59 +11:00
Maikel Linke
dbfcbc6db9 Apply import defaults to variants of new products
Spree 2 doesn't have `Product#on_hand=` any more. We actually can't save
stock levels without saving the product first which creates a stock
item.

This hacky solution overwrites the attribute in the entry so that it
gets copied to the variant later on. I think a better solution needs
some refactoring as proposed in:
https://github.com/openfoodfoundation/openfoodnetwork/issues/2783#issuecomment-459601530
2019-02-05 15:41:19 +11:00
luisramos0
d598831d67 Adapt variants auto complete to spree v2 code with shipments 2019-02-04 18:59:41 +00:00
luisramos0
698ba4618d Adapt customer search override to spree v2 and fix customer details spec in admin orders spec 2019-02-04 18:58:02 +00:00
luisramos0
e5fdc89659 Fix distributor change spec in admin orders spec 2019-02-04 18:58:01 +00:00
luisramos0
c612df5174 Fix admin orders spec non tax adjustments by adapting to new view 2019-02-04 18:58:01 +00:00
Hugo Daniel
c823f942b4 Fix failing specs due to Spree 2's new order admin page
Add missing form tag and OC and shops injectors on order form to make the OC field, the distributor field and the update button work
2019-02-04 18:57:51 +00:00
Hugo Daniel
ae799eb2b6 Use Spree routes 2019-02-04 18:56:28 +00:00
Luis Ramos
5a4205d151 Merge pull request #3432 from kristinalim/fix/3327-intermittent_spec_failures
3327 [Flaky Spec] Fix shop accidentally becoming order coordinator
2019-02-03 19:32:40 +00:00
Luis Ramos
4b133bbc31 Merge pull request #3412 from kristinalim/fix/3059-race_condition_in_enterprise_image_specs
3059 [Flaky Spec] Fix race condition in enterprise image feature specs
2019-02-03 19:32:11 +00:00
Luis Ramos
a0b5509850 Merge pull request #3430 from kristinalim/fix/3420-intermittent_spec_failures
3420 [Flaky Spec] Fix date format in spec when single-digit day of month
2019-02-03 19:30:22 +00:00
Luis Ramos
8fdd1db2c3 Merge pull request #3380 from mkllnk/3379-payment-method-spec
Use patch to hide Paypal gateway password
2019-02-02 09:54:18 +00:00
Luis Ramos
2dce3373af Merge pull request #3385 from luisramos0/2-0-gemfilelock-fix
[Spree Upgrade] Fix conflicts in gemfile lock
2019-02-02 09:48:51 +00:00
Luis Ramos
6de23fcea1 Merge pull request #3374 from luisramos0/2-0-order-cycle-mgmt-report
[Spree Upgrade] Fix order_cycle_management_report shipping methods filter
2019-02-02 09:47:45 +00:00
Kristina Lim
3104862739 Fix shop accidentally becoming order coordinator
The original setup of the order calls:

  create(:simple_order_cycle)

Which picks an arbitrary distributor as coordinator:

  coordinator { Enterprise.is_distributor.first || ... }

There is a chance that any of the existing distributor enterprises
becomes coordinator, causing a test to intermittently fail.

This commit makes the relationship between the reference enterprises and
the order consistent.
2019-02-01 20:28:36 +00:00
Kristina Lim
4bff256f6d Match date format in spec with import date filter
This was failing if the current day of month only has one digit. The
test could not find the date in the import date filter.

Before this commit, the resulting string in the test replaced "  " with
" ", so "February  2" was being changed to "February 2". The import date
filter however uses two spaces in this case, even if the browser shows
only one (HTML inline text renders two spaces as just one).
2019-02-02 01:43:52 +08:00
Pau Pérez Fabregat
e1fb005e70 Merge pull request #3387 from kristinalim/fix/3384-product_import_timeout
3384 [Product Import] Process only one batch of rows at a time
2019-02-01 17:29:04 +01:00
luisramos0
e584fd2155 Make in_stock? work for both variants and overrides by moving it from VariantStock to variant_decorator.
Added tests for it in scope_hub_to_variant and improved VO shopping specs
2019-02-01 16:18:09 +00:00
luisramos0
5d82efa213 Add unit test for VariantStock.can_supply? 2019-02-01 16:16:04 +00:00
Isaac Haseley
09d3cea830 Lazy-load one more translation 2019-02-01 09:22:26 -06:00
luisramos0
80af7c770b Remove rescue from products_reset_strategy in product import: if setting count_on_hand fails the import will raise a RuntimeError 2019-02-01 08:32:45 +00:00
luisramos0
4b9be6f1a8 Change product import's product_reset_strategy from depending on the inexistent variant.count_on_hand DB field and instead make individual calls to variant.count_on_hand= defined in VariantStock.
Also, added spec to test return value of the reset method: it should return number of updated records.
2019-02-01 08:22:50 +00:00
Pau Pérez Fabregat
faea876ff0 Merge pull request #3361 from luisramos0/2-0-report-spec
[Spree Upgrade] Phase 2 - Fix some specs in reports_spec and in lettuce share report
2019-02-01 08:26:55 +01:00
Isaac Haseley
73a58435a8 Adopt one/other pluralization 2019-01-31 21:45:57 -06:00
Isaac Haseley
a18c98191a Better accomodate different sentence structures 2019-01-31 21:45:57 -06:00
Isaac Haseley
8543bb7cfb Add missing 'active products' translation on dashboard 2019-01-31 21:45:57 -06:00
Hugo Daniel
fa1525bdd3 Upgrade views to Spree 2 and apply overrides 2019-01-31 12:59:05 +01:00
Maikel
a9bac2c1af Merge pull request #3411 from openfoodfoundation/transifex
Transifex
2019-01-31 13:42:50 +11:00
Transifex-Openfoodnetwork
32c5c48709 Updating translations for config/locales/en_US.yml 2019-01-31 12:38:44 +11:00
Jefferson Faseler
d4d0489328 Update name spaces for rake tasks to shorter 'ofn'. 2019-01-30 17:14:00 -05:00
Kristina Lim
65438e2619 Refactor checking no preview image in specs 2019-01-31 05:04:18 +08:00
Kristina Lim
a3c808a172 Refactor checking of preview image path in specs 2019-01-31 05:02:57 +08:00
Kristina Lim
777712a0e9 Fix race condition in enterprise image feature specs 2019-01-31 04:52:40 +08:00
Transifex-Openfoodnetwork
24c12897de Updating translations for config/locales/fr_CA.yml 2019-01-31 07:42:29 +11:00
Transifex-Openfoodnetwork
bd43e06605 Updating translations for config/locales/fr_CA.yml 2019-01-31 07:41:40 +11:00
luisramos0
3595abc08a Fix seeds script for cases where default stock location already exists in the DB 2019-01-30 15:08:37 +00:00
luisramos0
f6e6f67e7d Switch Spree::Config test setup with a mock in reports_spec to keep global test setup untouched 2019-01-30 15:03:23 +00:00
Luis Ramos
cf744bb663 Merge pull request #3407 from openfoodfoundation/transifex
Transifex
2019-01-30 13:58:26 +00:00
Transifex-Openfoodnetwork
2b13516d3d Updating translations for config/locales/nb.yml 2019-01-30 19:20:56 +11:00
Transifex-Openfoodnetwork
1b50ba2729 Updating translations for config/locales/fr.yml 2019-01-30 19:16:54 +11:00
Maikel Linke
18b3363e65 Use patch to hide Paypal gateway password 2019-01-30 15:43:59 +11:00
Maikel
e8ac0e4a9f Merge pull request #3402 from openfoodfoundation/transifex
Transifex
2019-01-30 14:45:39 +11:00
Maikel
155b205ac2 Merge pull request #3401 from luisramos0/2-0-stable-jan-29th
[Spree Upgrade] Merging master into 2-0-stable (4th run in Jan2019)
2019-01-30 14:44:40 +11:00
Maikel
bef7684505 Merge pull request #3399 from kristinalim/fix/3381-address_failing_tests
3381 [Flaky Spec] Load enterprise users tab before inspecting table
2019-01-30 14:29:16 +11:00
luisramos0
6d2765e352 Convert if statement in case statement in product import entry validator 2019-01-29 23:53:37 +00:00
Maikel
f3ff7ca2fe Merge pull request #3366 from coopdevs/fix-orders-controller-spec
Fix orders controller spec
2019-01-30 10:27:17 +11:00
dependabot[bot]
8750310648 Bump dalli from 2.7.2 to 2.7.9
Bumps [dalli](https://github.com/petergoldstein/dalli) from 2.7.2 to 2.7.9.
- [Release notes](https://github.com/petergoldstein/dalli/releases)
- [Changelog](https://github.com/petergoldstein/dalli/blob/master/History.md)
- [Commits](https://github.com/petergoldstein/dalli/compare/v2.7.2...v2.7.9)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-29 19:14:15 +00:00
Transifex-Openfoodnetwork
f7b7e98fec Updating translations for config/locales/en_GB.yml 2019-01-30 05:12:58 +11:00
luisramos0
cc4825290b Fix type conversion problem in product import entry validator 2019-01-29 15:45:22 +00:00
luisramos0
dce2524353 Added now mandatory shipping_category_id to CSVs in tests in admin/product_import_spec 2019-01-29 14:55:19 +00:00
luisramos0
ab2397785b Adapted product import EntryProcessor and EntryValidator to new VariantStock logic where on_hand is set at variant level (not at product level) and only after saving the variant 2019-01-29 14:55:18 +00:00
luisramos0
2ffc5305d7 Adapted VariantStock to handle on_hand string values (product import is set on_hand with string values) 2019-01-29 14:55:18 +00:00
luisramos0
fc1004cb3a Added now mandatory shipping_category_id to CSVs in most tests in models/product_importer_spec 2019-01-29 14:55:18 +00:00
luisramos0
c07b90ffb0 Update all locales with the latest Transifex translations 2019-01-29 12:45:28 +00:00
luisramos0
729feb16f1 Merge branch 'master' into 2-0-stable-jan-29th 2019-01-29 12:38:34 +00:00
Pau Pérez Fabregat
2b3ffd8c82 Merge pull request #2833 from kristinalim/fix-variant_override_permissions
Add tests for permissions for variant overrides
2019-01-29 09:51:41 +01:00
Pau Pérez Fabregat
a5ed17f0f5 Merge pull request #3390 from openfoodfoundation/dependabot/bundler/oj-3.7.8
Bump oj from 3.7.4 to 3.7.8
2019-01-29 09:50:25 +01:00
Pau Perez
c50fa1224b Do not restore adjustments that got deleted
If something in the block deleted the adjustment update_attribute will
fail.
2019-01-29 09:40:54 +01:00
Pau Perez
59f39b14f4 Do not restore adjustments that aren't in the hash
This way we don't modify adjustments that get created as part of the
passed block. We don't know how this might be used in the future.
2019-01-29 09:40:54 +01:00
Pau Perez
f4b790eefa Restore adjustments state after updating
We don't know exactly if all adjustments are closed in all
circumstances, so it's better to be conservative until we figure out.
Chances are that non-completed orders have them open.
2019-01-29 09:40:54 +01:00
Pau Perez
8eab3c5ec1 Extract meaningful methods from controller action
This sets the ground for future refactorings while providing some more
readability and context.
2019-01-29 09:40:54 +01:00
Pau Perez
c9429760cd Trigger the appropriate callbacks from controller 2019-01-29 09:40:54 +01:00
Pau Perez
0b62b4621f Make expectation easier to reason about 2019-01-29 09:40:54 +01:00
Pau Perez
9d1d8513e7 Make controller req. params a bit more obvious 2019-01-29 09:40:54 +01:00
Pau Perez
f589d4125d Restore distributor in test that relies on it 2019-01-29 09:40:54 +01:00
Pau Perez
1bceb0748a Do not modify config's state in test 2019-01-29 09:40:53 +01:00
Pau Pérez Fabregat
c9a8ec84c0 Merge pull request #3359 from kevinchristianson/ready
Convert sass files to scss
2019-01-28 20:02:37 +01:00
luisramos0
8a86c0473d Change app config to keep using the same v1 shipping method calculators and not the ones spree v2 introduces, these are copy pasted versions that work with packages
See this commit for more details: 18e5b98f5c (diff-b0846898827183f530c113ad7b83b8ea)

Also:
- remove shipping method restriction on calculators to inherit from Spree::Shipping::ShippingCalculator so that OFN customized calculators keep working
- add shipping method serializer spec to test serialization of all shipping methods configured
2019-01-27 21:03:32 +00:00
Kristina Lim
2129ab991b Load enterprise users tab before inspecting table 2019-01-26 12:11:41 +08:00
luisramos0
bd24d3e27a Remove setting the now inexistent global config allow_backorders to false in subs specs because the default value for on_demand (set through stocklocation.backorderabl_default) is false in all specs 2019-01-25 22:12:13 +00:00
luisramos0
216afce6fe Add missing translations detected in features/admin/subscriptions_spec 2019-01-25 22:11:29 +00:00
Kristina Lim
5992bba97b Import color variables in new page SCSS partials
"admin/all.css" which imports these SCSS partials already imports the
color variables in "admin/variables", so actually there should be no
need to import the variables again.

However, "application.css" calls "require_tree", which means asset
precompilation through Sprockets would attempt to compile each of the
SCSS partials individually. When compiled individually, the color
variables are not available to these partials.

This is a quick solution to allow precompilation of "application.css" to
complete.
2019-01-26 03:29:19 +08:00
Kristina Lim
4a58aedf09 Use clearer translation for "No Upcoming OC" 2019-01-26 02:03:57 +08:00
Kristina Lim
c33808e8f5 Extract some actions in tests into methods 2019-01-26 02:03:56 +08:00
Kristina Lim
da4d6a092a Add spec helper for choosing today from datepicker 2019-01-26 02:03:56 +08:00
Kristina Lim
9965e95c65 Refactor methods in SubscriptionVariantsService 2019-01-26 02:03:55 +08:00
Kristina Lim
b691d727a7 Move OFN::SubscriptionService to SubscriptionVariantsService 2019-01-26 02:03:55 +08:00
Kristina Lim
c23002102c Add warning for unavailable subscription items 2019-01-26 02:03:55 +08:00
Kristina Lim
929290fc77 Reduce restrictions for creating subscriptions
Allow the following variants:

* Variants of permitted producers
* Variants of hub
* Variants that are in outgoing exchanges where the hub is receiver
2019-01-26 02:03:54 +08:00
Kristina Lim
57f6a7a3b9 Support clicking different text for select2 helper
Interaction with the variant autocomplete is not precise. The specs only
search for the product name, then click the first result that matches
the product name which they see.

This could have been the case because searching using the full variant
name does not match the variant. For example, searching "Some Product -
1kg" would not have results, while searching only "Some Product" (the
product name) would list "Some Product - 1kg".

Clicking the first match does not work in all scenarios.

This allows using a separate text for searching and for clicking.
2019-01-26 02:03:54 +08:00
Kristina Lim
d3f20289f8 Move setup of feature specs for creating subscriptions 2019-01-26 02:03:53 +08:00
Kristina Lim
35c0bcb3df Add tests for eligible variants for a subscription 2019-01-26 02:03:53 +08:00
Kristina Lim
28c70c7719 Fix nesting of specs for editing subscriptions 2019-01-26 02:03:53 +08:00
Kristina Lim
b9492d6483 Fix setup in tests for SubscriptionValidator 2019-01-26 02:03:49 +08:00
Kristina Lim
b6d8611359 Return early in JS if last batch 2019-01-25 09:06:25 +08:00
Kristina Lim
4425b0416d Rename import_data feature test method 2019-01-25 04:42:11 +08:00
Kristina Lim
b0efc3a2fa Add feature spec for large file import 2019-01-25 04:42:06 +08:00
dependabot[bot]
33ee46b224 Bump oj from 3.7.4 to 3.7.8
Bumps [oj](https://github.com/ohler55/oj) from 3.7.4 to 3.7.8.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.7.4...v3.7.8)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-24 19:16:56 +00:00
dependabot[bot]
5610f64c7a Bump redcarpet from 3.2.3 to 3.4.0
Bumps [redcarpet](https://github.com/vmg/redcarpet) from 3.2.3 to 3.4.0.
- [Release notes](https://github.com/vmg/redcarpet/releases)
- [Changelog](https://github.com/vmg/redcarpet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vmg/redcarpet/compare/v3.2.3...v3.4.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-24 19:14:52 +00:00
Kristina Lim
b67ba89aca Process batches of the import CSV one after another
Start the HTTP request for processing next batches only after the
previous batch has completed.

A con of this approach is that the user needs to keep their browser open
for later parts of the large CSV to be processed, but this is better
than a higher chance of requests timing out.
2019-01-25 00:33:13 +08:00
Kristina Lim
bf084cd8df Move import batch size outside method 2019-01-25 00:28:56 +08:00
leandroalemao
dfa11834e3 [ISSUE-3348] LC: Fix moment.js deprecation warning 2019-01-24 11:16:31 +00:00
luisramos0
9f0958d0a4 Fix conflicts in gemfile lock 2019-01-24 09:36:57 +00:00
Maikel
4cc6a8c966 Merge pull request #3350 from openfoodfoundation/dependabot/bundler/delayed_job_active_record-4.1.3
Bump delayed_job_active_record from 4.1.2 to 4.1.3
2019-01-24 11:58:32 +11:00
Maikel
66cb0e6a91 Merge pull request #3352 from openfoodfoundation/dependabot/bundler/foundation-rails-5.5.2.1
Bump foundation-rails from 5.5.0.0 to 5.5.2.1
2019-01-24 10:29:17 +11:00
Maikel
a3cd1dc945 Merge pull request #3344 from mkllnk/3279-moment-upgrade
Avoid deprecation warnings of momentjs
2019-01-24 10:28:41 +11:00
Maikel
937aaf67c3 Merge pull request #3250 from coopdevs/open-adjustments-for-update
[Spree Upgrade] Open adjustments to enable update
2019-01-24 10:25:16 +11:00
Kristina Lim
cf7f8b887f Add tests for permissions for variant overrides 2019-01-24 07:08:54 +11:00
luisramos0
40014b83bd Fix order_cycle_management_report shipping methods filter
The original fix to adapt to v2 was wrong and still using deprecated order.shipping_method_id, this new version is now filtering the correct shipping_method_id in shipping_rates
2019-01-23 16:43:17 +00:00
Pau Pérez Fabregat
7881f96cac Merge pull request #3341 from openfoodfoundation/dependabot/bundler/daemons-1.3.1
Bump daemons from 1.2.2 to 1.3.1
2019-01-23 16:09:28 +01:00
Pau Pérez Fabregat
8320dc75e8 Merge pull request #3002 from kevinchristianson/margin-fix
Fix bad spacing on account settings error page
2019-01-23 16:09:14 +01:00
luisramos0
908c32587b Fix xero invoices specs in reports_spec by removing the shipping adjustment as this is put in the order by the standard order callbacks when line items are added 2019-01-23 15:07:31 +00:00
Pau Pérez Fabregat
77fd0b228e Merge pull request #3360 from brases/wording_order_cofirmation
Fix wording in email template for orders confirmation
2019-01-23 13:35:00 +01:00
Maikel
2064ffe548 Merge pull request #3354 from luisramos0/knapsack
New Knapsack report
2019-01-22 10:58:13 +11:00
Maikel
06af79d1b0 Merge pull request #3339 from Matt-Yorkley/headless4
[Headless Chrome] Fix embedded_shopfront_spec unhandled alert
2019-01-22 10:46:42 +11:00
dependabot[bot]
ea7f62123b Bump jwt from 1.5.6 to 2.1.0
Bumps [jwt](https://github.com/jwt/ruby-jwt) from 1.5.6 to 2.1.0.
- [Release notes](https://github.com/jwt/ruby-jwt/releases)
- [Changelog](https://github.com/jwt/ruby-jwt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jwt/ruby-jwt/compare/v1.5.6...v2.1.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-21 19:14:44 +00:00
Pau Pérez Fabregat
2b95b5e797 Merge pull request #3347 from luisramos0/2-0-default-on-demand
[Spree Upgrade] Sets StockLocation.backorderable_default to false in test factories
2019-01-21 17:34:46 +01:00
luisramos0
0f26080d79 In lettuce share report spec, call method directly instead of using send 2019-01-21 15:00:37 +00:00
Pau Pérez Fabregat
d8710d283a Merge pull request #3320 from luisramos0/2-0-subs-mailer
[Spree Upgrade] Phase 2 - Subscriptions - Specify :mailer type in SubscriptionMailer spec
2019-01-21 15:09:56 +01:00
Pau Pérez Fabregat
8b1c1881f7 Merge pull request #3351 from openfoodfoundation/dependabot/bundler/diffy-3.3.0
Bump diffy from 3.1.0 to 3.3.0
2019-01-21 15:08:24 +01:00
Pau Pérez Fabregat
807c45a25c Merge pull request #3349 from coopdevs/fix-shipment-without-fee
Fix shipment without fee
2019-01-21 14:51:10 +01:00
Pau Pérez Fabregat
659c47340e Merge pull request #3353 from luisramos0/2-0-stable-jan-17th
[Spree Upgrade] Merging master into 2-0-stable (third run in Jan2019)
2019-01-21 11:06:57 +01:00
luisramos0
9b2fb56025 Fix reports_spec sales tax report test by calling count_on_hand setter, setting shipping_method in the right step in the checkout workflow and changing login method to match all other tests in this spec 2019-01-20 20:40:14 +00:00
luisramos0
4669c71b19 Fix lettuce_share_report_spec by adapting count_on_hand setter, it's not a db column anymore 2019-01-20 20:40:14 +00:00
luisramos0
5d86d3769e Improve variable names in lettuce_share_report_spec 2019-01-20 20:40:14 +00:00
Kevin Christianson
6b7273f685 Convert sass files to scss 2019-01-19 22:40:41 -06:00
nozakis
972bfd5e62 Fixed bad margins on the account settings error page. 2019-01-19 16:23:13 -06:00
Brases
3437257515 Fix wording in order confirmation email template
Fixes issue #3063 "Repeated translation in Order Confirmation Screen and Email".
Now "Ready for" (collection time) is not repeated in place of "Collection
details" (collection instructions)
2019-01-19 20:37:21 +00:00
luisramos0
d155bb142c Make proxy order spec a bit more resilient by allowing two secs diff in timestamps 2019-01-19 15:53:05 +00:00
luisramos0
6f7a351ffa Update knapsack report to get build jobs more balanced 2019-01-18 23:46:09 +00:00
dependabot[bot]
990b90009e Bump stripe from 3.3.2 to 4.5.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 3.3.2 to 4.5.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/v3.3.2...v4.5.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-18 19:17:05 +00:00
Matt-Yorkley
3929689d48 Ensure login via modal is completed 2019-01-18 19:06:42 +00:00
dependabot[bot]
49e3aa5070 Bump daemons from 1.2.2 to 1.3.1
Bumps [daemons](https://github.com/thuehlinger/daemons) from 1.2.2 to 1.3.1.
- [Release notes](https://github.com/thuehlinger/daemons/releases)
- [Changelog](https://github.com/thuehlinger/daemons/blob/master/Releases)
- [Commits](https://github.com/thuehlinger/daemons/compare/v1.2.2...v1.3.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-18 16:52:13 +00:00
dependabot[bot]
1e01cf81ec Bump diffy from 3.1.0 to 3.3.0
Bumps [diffy](https://github.com/samg/diffy) from 3.1.0 to 3.3.0.
- [Release notes](https://github.com/samg/diffy/releases)
- [Changelog](https://github.com/samg/diffy/blob/master/CHANGELOG)
- [Commits](https://github.com/samg/diffy/compare/3.1.0...3.3.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-18 16:51:42 +00:00
Pau Pérez Fabregat
a95dd98ed6 Merge pull request #2869 from Matt-Yorkley/bi/bulk_invoices
[Bulk Invoice Printing] Bulk invoices
2019-01-18 17:49:34 +01:00
Pau Pérez Fabregat
ee28cc5a29 Merge pull request #3323 from openfoodfoundation/dependabot/bundler/paper_trail-5.2.3
Bump paper_trail from 3.0.9 to 5.2.3
2019-01-18 17:48:56 +01:00
Pau Perez
a99a4725c9 Add #shipment to conform to OFN's decision
This ensures we can still use Order#shipment although Spree deprecates
it, while fixing a bug at the same time. The problem that was making the
test fail was on `Order#shipment` that Spree defines.

If the shipments association changes, `#shipment` returns stale data.
That is because the order object we might be using is still alive, and
so its @shipment ivar still holds an old shipment object (it's not nil)
and thus `@shipment ||= shipments.last` doesn't evaluate the right-hand
side of the expression.

Note that we need to `prepend` the evaluation of the concern (which it's
been rename) for our methods to take precedence over Spree ones. With
`include`, Spree's `#shipment` would still be picked up making the test
fail.
2019-01-18 16:02:51 +01:00
luisramos0
01f0671f6d Add missing accept alert in products_spec when deleting product properties 2019-01-18 12:45:29 +00:00
luisramos0
6da94fc960 Adapt cart_controller_spec to new variant_stock where variant count_on_hand can only be set after saving the variant 2019-01-18 12:45:29 +00:00
luisramos0
eac365182f Adapt variants_stock_levels_spec to new variant_stock where variant count_on_hand can only be set after saving the variant 2019-01-18 12:45:25 +00:00
luisramos0
13d65a4a39 Fix Gemfile.lock by running bundle install 2019-01-18 11:43:58 +00:00
luisramos0
0460e7fc6c Merge branch 'master' into 2-0-stable-jan-17th 2019-01-17 22:51:25 +00:00
luisramos0
f896e78e6f Set StockLocation.backorderable_default to false in DefaultStockLocation and in StockLocation factory.
This makes the default value of variant.on_demand false in all environments and in tests.

Additionally, adapt VariantStock.on_demand test and product factory to this change (setting on_hand value in product factory so it's not out of stock by default).
2019-01-17 20:28:05 +00:00
luisramos0
1d60732581 Improve readability of payment_method_spec 2019-01-17 20:18:43 +00:00
luisramos0
b52c99ac26 Delete on_hand test in product spec, this is already covered in product_stock_spec 2019-01-17 20:18:43 +00:00
dependabot[bot]
2e993542a7 Bump foundation-rails from 5.5.0.0 to 5.5.2.1
Bumps [foundation-rails](http://foundation.zurb.com) from 5.5.0.0 to 5.5.2.1.

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-17 19:20:09 +00:00
dependabot[bot]
560e52a0ce Bump delayed_job_active_record from 4.1.2 to 4.1.3
Bumps [delayed_job_active_record](https://github.com/collectiveidea/delayed_job_active_record) from 4.1.2 to 4.1.3.
- [Release notes](https://github.com/collectiveidea/delayed_job_active_record/releases)
- [Commits](https://github.com/collectiveidea/delayed_job_active_record/compare/v4.1.2...v4.1.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-17 19:17:20 +00:00
dependabot[bot]
adfa6b306c Bump paper_trail from 3.0.9 to 5.2.3
Bumps [paper_trail](https://github.com/airblade/paper_trail) from 3.0.9 to 5.2.3.
- [Release notes](https://github.com/airblade/paper_trail/releases)
- [Changelog](https://github.com/paper-trail-gem/paper_trail/blob/master/CHANGELOG.md)
- [Commits](https://github.com/airblade/paper_trail/compare/v3.0.9...v5.2.3)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-17 19:08:33 +00:00
Pau Pérez Fabregat
c178478a4f Merge pull request #3346 from luisramos0/headless-chrome
Merge Headless Chrome to master
2019-01-17 20:04:27 +01:00
Pau Pérez Fabregat
29990f25c1 Merge pull request #3325 from mkllnk/2469-fix-async-js-requests
2469 Fix async js requests
2019-01-17 20:03:54 +01:00
Pau Pérez Fabregat
e8dd6e9ce7 Merge pull request #3322 from luisramos0/delete_archive_spec
Delete dead code and unused folders
2019-01-17 20:01:49 +01:00
Luis Ramos
a8998fad79 Merge branch 'master' into headless-chrome 2019-01-17 18:22:25 +00:00
Pau Pérez Fabregat
fd00ad4e94 Merge pull request #3342 from openfoodfoundation/dependabot/bundler/letter_opener-1.7.0
Bump letter_opener from 1.6.0 to 1.7.0
2019-01-17 16:55:46 +01:00
Pau Pérez Fabregat
c51aa0f3b8 Merge pull request #3340 from openfoodfoundation/dependabot/bundler/whenever-0.10.0
Bump whenever from 0.9.2 to 0.10.0
2019-01-17 16:52:21 +01:00
Matt-Yorkley
e7e208061f Assign polling numbers to variables and add comments 2019-01-17 09:37:32 +00:00
Matt-Yorkley
a3b9936f37 Improve matching inventory using 'items' unit type 2019-01-17 09:33:39 +00:00
Maikel Linke
4d3aed8467 Avoid deprecation warnings of momentjs 2019-01-17 14:49:43 +11:00
Maikel
9322c3f0c8 Merge pull request #3343 from Matt-Yorkley/headless5
[Headless Chrome] Fix datepicker interactions in bulk_order_management_spec
2019-01-17 14:19:00 +11:00
Maikel Linke
520ec5d047 Fix whenever upgrade by declaring dependency
Whenever doesn't depend on ActiveSupport any more. So we can't rely on
YAML being automatically loaded for us. We have to require it.
2019-01-17 10:41:11 +11:00
Maikel
7272ec8738 Merge pull request #3333 from Matt-Yorkley/headless3
[Headless Chrome] Fix shipping method tests
2019-01-17 09:18:12 +11:00
Matt-Yorkley
b3849778fa Fix datepicker interactions in bulk_order_management_spec 2019-01-16 21:51:15 +00:00
dependabot[bot]
d884be54f9 Bump letter_opener from 1.6.0 to 1.7.0
Bumps [letter_opener](https://github.com/ryanb/letter_opener) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/ryanb/letter_opener/releases)
- [Changelog](https://github.com/ryanb/letter_opener/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ryanb/letter_opener/compare/v1.6.0...v1.7.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-16 19:22:19 +00:00
dependabot[bot]
483d8893f2 Bump whenever from 0.9.2 to 0.10.0
Bumps [whenever](https://github.com/javan/whenever) from 0.9.2 to 0.10.0.
- [Release notes](https://github.com/javan/whenever/releases)
- [Changelog](https://github.com/javan/whenever/blob/master/CHANGELOG.md)
- [Commits](https://github.com/javan/whenever/compare/v0.9.2...v0.10.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-16 19:18:32 +00:00
Matt-Yorkley
07dff0af7f Check tag js has finished executing before submitting form 2019-01-16 17:46:56 +00:00
Matt-Yorkley
7487a6da3c Fix shipping method tests 2019-01-16 17:17:10 +00:00
Matt-Yorkley
5caa958db0 Merge pull request #3336 from luisramos0/chrome-helper-fix
Fix Gemfile.lock by running bundle install. Adds missing chromedriver-helper.
2019-01-16 17:16:22 +00:00
Pau Pérez Fabregat
e557e06a7b Merge pull request #3324 from openfoodfoundation/dependabot/bundler/spring-1.7.2
Bump spring from 1.1.3 to 1.7.2
2019-01-16 17:50:08 +01:00
luisramos0
41cd8c7ed3 Fix Gemfile.lock by running bundle install. Adds missing chromedriver-helper. 2019-01-16 16:29:55 +00:00
Matt-Yorkley
21bdaf9960 Fix enterprise images spec 2019-01-16 16:24:01 +00:00
Matt-Yorkley
0589516368 Add chromedriver-helper to Gemfile for test and development 2019-01-16 16:24:01 +00:00
Matt-Yorkley
40ccabc2b4 Fix broken product import spec 2019-01-16 16:24:01 +00:00
Maikel Linke
f391eab5b0 Revert "Temporarily move 2 broken specs to pending (shops and producers search by url) due to google maps api changes"
This reverts commit 7dc208fb8c.
2019-01-16 16:24:01 +00:00
Maikel Linke
6a53e5fd3d Avoid alert by waiting until shop loaded 2019-01-16 16:24:01 +00:00
Maikel Linke
dd5bd5b616 Remove js_errors = false from specs because it is not available in Selenium ChromeDriver
If the js errors this line was hidding become a problem we will need to address them
2019-01-16 16:24:01 +00:00
luisramos0
fce56776f6 Make embedded_shopfronts_spec work with selenium 2019-01-16 16:24:01 +00:00
luisramos0
5fb4faac91 Make features/admin/subscriptions_spec and shopworkflow work with selenium
Also, remove a test support method, dead code
2019-01-16 16:24:01 +00:00
Maikel Linke
e49eb42af6 Make Chrome accepting alerts 2019-01-16 16:21:30 +00:00
Maikel Linke
843ec2c08f Wait for table rows before testing them
Unfortunately, the exact table row matcher doesn't wait correctly for
changes on the page. Waiting correctly would mean to assemble a very
complicated xpath similar to this gem:

https://github.com/jnicklas/capybara_table
2019-01-16 16:21:30 +00:00
Maikel Linke
1407ae7778 Make TableMatcher match exactly, not part of row
Reverts dbf3a7aaaf9d458f99e14983ca9db2d4cbe4b564.

The reverted commit tried to avoid a 30 second delay by using
have_selector. While that was successful in reducing test time, it made
the matcher find rows that where not exactly the wanted row, but contained
text of the wanted row. This wasn't a problem until we experimented with
Chrome as test browser returns text on select boxes.

This commit makes the matcher precise again. We still have to deal with
the 30 second delay.
2019-01-16 16:21:30 +00:00
Rob Harrington
ef68bd1b43 Replace unnecessary perform_and_ensure* type helpers with standard actions and expectations 2019-01-16 16:21:30 +00:00
Rob Harrington
98f4ae9b60 Change screen size back to large after authentication_spec 2019-01-16 16:21:30 +00:00
Rob Harrington
a988fad2db Update orders_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
98a5b40aec Ensure multiligual switcher specs run in large screen 2019-01-16 16:21:30 +00:00
Rob Harrington
3a781049ed Update orders_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
3b40ede0b8 Fix table row matchers
The matcher was silently failing on the check step (adding ~30 seconds to out specs each time it was used!), so I changed it to fail if the basic step does not succeed
2019-01-16 16:21:30 +00:00
Rob Harrington
56c07aac5c Don't run ticket printing spec 2019-01-16 16:21:30 +00:00
Rob Harrington
4951863e9b Update enterprises_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
eccf874f03 Update shopping_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
2b48b4ee18 Update cart_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
bba8b2020c Replace use of 'trigger' in ui_component helper 2019-01-16 16:21:30 +00:00
Rob Harrington
23fa57ff6d Update multilingual_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
bbaf6359f3 Update shopping_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
1923c0dbc6 Update enterprise_fees_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
c2432fab0b Use all_options_absent method instead of poorly written no_options_present
SAVES 30 SECONDS FOR EVERY SPEC THAT IS IT USED IN!
2019-01-16 16:21:30 +00:00
Rob Harrington
3e90f9aa1d Update customers_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
189856a92a Reimplement resize helper methods to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
1bad08c1c0 Update checkout_workflow and spec_helper to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
3ab7a3d62b Update order_cycles_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
50a8554b55 Update enterprises_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
69e44bdeb3 Update enterprise_roles_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
5ae33747ea Update enterprise_relationships_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
7dc792b6fe Update enterprise_groups_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
e97f5e36a6 Update bulk_order_management_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
2ece6bfb49 Update subscriptions_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
8416af4995 Update variants_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
8413c5f60a Update variant_overrides_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
5c268e9359 Update schedules_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
708e308b7c Update products_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
c6a383aafd Update bulk_product_update_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
cc55f59b00 Update tag_rules_spec to work with Selenium 2019-01-16 16:21:30 +00:00
Rob Harrington
118d26b2ff Add aynchronous select2 search helper
select2_search from spree times out after 1 second, so this new method just waits for a result to be returned before attempting to select it
2019-01-16 16:21:30 +00:00
Rob Harrington
70502a7a32 Switch to using selenium as js driver for capybara specs
PhantomJS is no longer being maintained
2019-01-16 16:21:30 +00:00
Rob Harrington
6608655e9a Use headless chrome for karma specs instead of PhantomJS
PhantomJS is no longer being maintained
2019-01-16 16:21:30 +00:00
Pau Perez
1e03835391 Update order while adjustments are open
Spree supports updating line items as the model contains these two
callbacks:

f55722b38d/core/app/models/spree/line_item.rb (L27-L28)

However, as
f55722b38d/core/app/models/spree/adjustment.rb (L1-L7)
clearly states, due to Adjustment's state machine, once the order is
finalized it can't be updated. Then, if we want to have an up-to-date
adjustment_total attribute for a complete order we must update it while
the adjustments are open. Otherwise, the following `immutable?` check
does not pass.

f55722b38d/core/app/models/spree/adjustment.rb (L84-L92)
2019-01-16 15:28:54 +01:00
Pau Pérez Fabregat
b05b2c3a5a Merge pull request #3254 from coopdevs/add-default-stock-location
[Spree Upgrade] Create the default StockLocation in DB
2019-01-16 12:57:45 +01:00
Pau Pérez Fabregat
d2325fc7dd Merge pull request #3230 from luisramos0/stock_levels
3222 Improve stock levels calculation code on cart populate and add specs to test handling of variant overrides
2019-01-16 12:54:25 +01:00
Pau Pérez Fabregat
5bb327efbd Merge pull request #3234 from openfoodfoundation/dependabot/bundler/oauth2-1.4.1
Bump oauth2 from 1.2.0 to 1.4.1
2019-01-16 12:33:39 +01:00
Pau Pérez Fabregat
d37d964ab9 Merge pull request #3311 from luisramos0/2-0-stable-jan-11th
[Spree Upgrade] Merging master into 2-0-stable (second run in Jan2019)
2019-01-16 12:32:52 +01:00
Matt-Yorkley
79dce01aef Add spec for new on_demand logic 2019-01-16 01:19:01 +00:00
Matt-Yorkley
7dc7ffe1b7 Update inventory template 2019-01-16 01:18:46 +00:00
Maikel
54311c2d1b Merge pull request #3304 from HugsDaniel/3288-3291-translation-issues
Add I18n keys for order state and order firstname and lastname filters
2019-01-16 09:43:28 +11:00
Maikel
2c197d40bb Merge pull request #3326 from mkllnk/cleanup-specs
Cleanup specs
2019-01-16 09:23:06 +11:00
luisramos0
ea61e415e1 Add bugsnag notifications to detect potential dead code scenarios in variants_stock_levels and cart_service 2019-01-15 13:42:51 +00:00
luisramos0
d926f7c776 Reorganize and improve cart controller spec 2019-01-15 13:42:51 +00:00
luisramos0
aa603c9a84 Make rubocop happy on cart controller, cart service and stock levels service 2019-01-15 13:42:51 +00:00
luisramos0
b0449be302 Add spec to test cart controller handling of variant overrides on cart populate 2019-01-15 13:38:58 +00:00
luisramos0
c0473a4505 Extract variants_stock_levels from cart_controller and refactor some names 2019-01-15 13:38:58 +00:00
Maikel
e56915e65a Merge pull request #3303 from openfoodfoundation/transifex
Transifex
2019-01-15 17:19:21 +11:00
Maikel Linke
5a5db3c458 Fix state of RequestMonitor
`@loading` was set to false when the request with the last id finished.
But another request started earlier (having a lower id) could take
longer. `@loading` was set to false even though these long requests were
still active.
2019-01-15 15:45:49 +11:00
Maikel Linke
ca9673f562 Fix Dereferencer service
It failed when `object[attr]` was `undefined` instead of `null`.
2019-01-15 15:43:00 +11:00
Maikel
8ba0e3b474 Merge pull request #3302 from mkllnk/74-bundler-version
Add script to install required bundler version
2019-01-15 09:36:18 +11:00
dependabot[bot]
22c225968a Bump spring from 1.1.3 to 1.7.2
Bumps [spring](https://github.com/rails/spring) from 1.1.3 to 1.7.2.
- [Release notes](https://github.com/rails/spring/releases)
- [Changelog](https://github.com/rails/spring/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/spring/compare/v1.1.3...v1.7.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-14 19:18:25 +00:00
luisramos0
90240f1802 Delete unused folders under /vendor 2019-01-14 14:38:51 +00:00
luisramos0
497974db74 Delete outdated archived version of checkout spec 2019-01-14 14:32:51 +00:00
luisramos0
e2c966244a Delete /doc.
The list of specs is outdated and the images were transfered to the wiki itself

The project docs should be in the wiki
2019-01-14 14:31:31 +00:00
luisramos0
0009b663e7 Specify :mailer type in specs
According to RSpec docs we need to specify type: :mailer for mails to
work. Check it out:
https://relishapp.com/rspec/rspec-rails/v/3-8/docs/mailer-specs.

This fixes all specs in SubscriptionMailer
2019-01-13 15:50:35 +00:00
Pau Pérez Fabregat
ccc0a2cf96 Merge pull request #3280 from openfoodfoundation/dependabot/bundler/uglifier-4.1.20
Bump uglifier from 4.1.19 to 4.1.20
2019-01-11 19:46:04 +01:00
Pau Perez
5b8c0dffe2 Remove test for a state that is no longer possible 2019-01-11 16:39:06 +01:00
Pau Perez
817bf4caa1 Explain why a index forbids more than a location 2019-01-11 16:39:06 +01:00
Pau Perez
10a678bdfe Rely on Spree's default StockLocation 2019-01-11 16:39:06 +01:00
Pau Perez
730d5ff7d6 Include the default location in seed data
This ensures that new OFN instances will have the proper stock location
set up.
2019-01-11 15:52:25 +01:00
Pau Perez
9ebe112bcc Abstract OFN's default stock location into a class 2019-01-11 15:52:09 +01:00
luisramos0
9ab99f13c4 Merge branch 'master' into 2-0-stable-jan-11th 2019-01-11 11:58:24 +00:00
Matt-Yorkley
3f62d82afc Add more inventory testing for visibility in the inventory UI 2019-01-11 11:26:38 +00:00
Maikel Linke
4abacb3691 Remove unused spec helpers
They all seem to have been used in the past. People forgot to remove
them after removing the using spec code.
2019-01-11 18:04:24 +11:00
Maikel Linke
e89a836e72 Remove forgotten code from spec
Commit e4ebeb8a29 forgot to remove this
code.
2019-01-11 18:04:24 +11:00
Maikel Linke
223982f571 Prepare spec for Chrome testing 2019-01-11 18:04:24 +11:00
Maikel Linke
cbdda54989 DRY specs with new helper 2019-01-11 18:04:24 +11:00
Maikel
4920782742 Merge pull request #3072 from luisramos0/2-0-calc-line-items-for-take-2
Fix bug on calculator_decorator line_items_for where input is line_item with a nil order
2019-01-11 14:49:25 +11:00
dependabot[bot]
1548c7c25a Bump oauth2 from 1.2.0 to 1.4.1
Bumps [oauth2](https://github.com/oauth-xx/oauth2) from 1.2.0 to 1.4.1.
- [Release notes](https://github.com/oauth-xx/oauth2/releases)
- [Changelog](https://github.com/oauth-xx/oauth2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/oauth-xx/oauth2/compare/v1.2.0...v1.4.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-10 23:46:45 +00:00
dependabot[bot]
7f09112d7b Bump uglifier from 4.1.19 to 4.1.20
Bumps [uglifier](https://github.com/lautis/uglifier) from 4.1.19 to 4.1.20.
- [Release notes](https://github.com/lautis/uglifier/releases)
- [Changelog](https://github.com/lautis/uglifier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/lautis/uglifier/compare/v4.1.19...v4.1.20)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-01-10 23:45:22 +00:00
Maikel
ab14b73e17 Merge pull request #3211 from openfoodfoundation/dependabot/bundler/blockenspiel-0.5.0
Bump blockenspiel from 0.4.5 to 0.5.0
2019-01-11 10:42:40 +11:00
Maikel
fff054efc1 Merge pull request #3169 from luisramos0/hubPermissions
Add guard clause on variant overrides filter in case hub id is not present in the hubPermissions
2019-01-11 10:41:57 +11:00
Maikel
6c3d769121 Merge pull request #3229 from mkllnk/3127-tax-rates-report
3127 More robust tax rates report
2019-01-11 10:41:12 +11:00
Maikel
935e233605 Merge pull request #3244 from luisramos0/ruby-racer
Revert to the ruby racer
2019-01-11 10:40:02 +11:00
Hugo Daniel
026fe55f1d Add I18n keys for order state and order firstname and lastname filters 2019-01-10 15:32:23 +01:00
Transifex-Openfoodnetwork
e70b8c03ce Updating translations for config/locales/nb.yml 2019-01-10 22:18:58 +11:00
Matt-Yorkley
e624faaacb Add 'please wait' message to bulk invoice modal 2019-01-10 09:57:06 +00:00
Matt-Yorkley
0e478ff501 Increase polling to 150 seconds maximum before showing error message. 2019-01-10 09:57:06 +00:00
Matt-Yorkley
66ac61f591 Rename background processing method 2019-01-10 09:57:06 +00:00
Matt-Yorkley
4f9f8adcd6 Add Service and remove Job 2019-01-10 09:57:06 +00:00
Matt-Yorkley
003014daf8 Extract invoice methods from ordersCtrl 2019-01-10 09:57:06 +00:00
Matt-Yorkley
bb814f91ef Extract timeout to named function 2019-01-10 09:57:06 +00:00
Matt-Yorkley
6b6a41cfbc Update CSS 2019-01-10 09:57:06 +00:00
Matt-Yorkley
638dc6eada Add polling and show action 2019-01-10 09:57:06 +00:00
Matt-Yorkley
b0f75162ac Add delayed job for create bulk invoice 2019-01-10 09:57:06 +00:00
Matt-Yorkley
7d82020657 Move bulk invoice to new RESTful route 2019-01-10 09:57:06 +00:00
Matt-Yorkley
4a88fb0626 Use simpler array for selected ids 2019-01-10 09:57:06 +00:00
Matt-Yorkley
5279210254 Improve invoice order querying 2019-01-10 09:57:06 +00:00
Matt-Yorkley
f3585befff Fix customer missing from some order records - guest checkout? 2019-01-10 09:57:06 +00:00
Matt-Yorkley
24207053e4 Reset selected orders on filter change 2019-01-10 09:57:06 +00:00
Matt-Yorkley
5cc8bad42b Improve UI layout for select all option 2019-01-10 09:57:06 +00:00
Matt-Yorkley
42cf96e635 Disable button unless orders selected 2019-01-10 09:57:06 +00:00
Matt-Yorkley
4ec0f0ff73 Add bulk invoices printing 2019-01-10 09:57:06 +00:00
Matt-Yorkley
96d530b473 Tidy up invoice template selection 2019-01-10 09:57:06 +00:00
Matt-Yorkley
9a71236abd Add combine_pdf gem 2019-01-10 09:57:06 +00:00
Matt-Yorkley
f263ef7dc0 Add selectable checkboxes 2019-01-10 09:57:06 +00:00
Maikel
4f5bb96484 Merge pull request #3300 from openfoodfoundation/transifex
Transifex
2019-01-10 17:52:28 +11:00
Maikel Linke
199dee3f64 Use install-bundler in setup script 2019-01-10 17:44:13 +11:00
Maikel Linke
dafa433788 Add script to install required bundler version
The newest version of bundler is not compatible with our current version
of Ruby. This script helps to install the bundler version defined in
Gemfile.lock.
2019-01-10 17:44:09 +11:00
luisramos0
292f22af4e Adapt factory completed_order_with_fees to new parent order_with_totals_and_distribution by cleaning up duplicate shipping fees 2019-01-09 23:31:40 +00:00
Transifex-Openfoodnetwork
15e197b3b0 Updating translations for config/locales/en_GB.yml 2019-01-10 07:31:46 +11:00
luisramos0
e787a317dc Adapt user_balance_calculator_spec to new order_with_totals_and_distribution with shipping fee correctly included in its total 2019-01-09 16:02:09 +00:00
luisramos0
e45f7571fb Fix order_with_totals_and_distribution by updating shipping fees 2019-01-09 15:20:28 +00:00
Pau Pérez Fabregat
0eefd2455c Merge pull request #3293 from luisramos0/2-0-stable-jan-8th
[Spree Upgrade] Merging master into 2-0-stable (first run in Jan2019)
2019-01-09 16:11:18 +01:00
Pau Pérez Fabregat
399cc5f796 Merge pull request #3224 from alvaro-chalar/footer-message
Add custom footer message in reports section
2019-01-09 16:01:02 +01:00
Pau Pérez Fabregat
1815a2116d Merge pull request #3257 from coopdevs/refactor-enterprise-controller-shop-injection
Refactor to reveal how we load enterprises in shop
2019-01-09 13:21:56 +01:00
Maikel
abe4f78e5c Merge pull request #2988 from Matt-Yorkley/pi/utf8
Pi/utf8
2019-01-09 15:39:05 +11:00
Pau Pérez Fabregat
57267ab4a4 Merge pull request #3297 from openfoodfoundation/transifex
Transifex
2019-01-08 22:45:55 +01:00
Transifex-Openfoodnetwork
f05f4ce0b1 Updating translations for config/locales/en_GB.yml 2019-01-09 07:06:27 +11:00
Pau Pérez Fabregat
bd10400457 Merge pull request #3295 from coopdevs/pull-translations
Update all locales with the latest Transifex translations
2019-01-08 17:58:51 +01:00
Pau Perez
f1f1ab9daf Update all locales with the latest Transifex translations 2019-01-08 17:17:35 +01:00
luisramos0
2cc8a0e9e3 Fix models/variant_override_spec by setting mandatory on_demand true when count_on_hand is nil 2019-01-08 15:32:10 +00:00
luisramos0
134a51ab1d Fix merge typo in the cancel email method of the order mailer decorator 2019-01-08 15:31:28 +00:00
luisramos0
e28f9a7c84 Merge branch 'master' into 2-0-stable-jan-8th 2019-01-08 14:29:50 +00:00
Maikel
14ccb39478 Merge pull request #3287 from luisramos0/2-0-edit-variants
[Spree Upgrade] Fix variant edit page optiontype deface code
2019-01-08 16:37:38 +11:00
Maikel
abbbfd6191 Merge pull request #3286 from luisramos0/2-0-order-spec
[Spree Upgrade] Fix specs in admin orders spec
2019-01-08 16:35:59 +11:00
Maikel
a46180ef78 Merge pull request #3282 from luisramos0/2-0-credit-card
[Spree Upgrade] Fix credit card spec that was depending on current year
2019-01-08 16:34:03 +11:00
Maikel
68df27df02 Merge pull request #3281 from luisramos0/2-0-tab-ransl
[Spree Upgrade] 3119, 3112 and 3073 - fix menu translations
2019-01-08 16:31:41 +11:00
luisramos0
676f0e71b8 Fix variant edit page optiontype deface code 2019-01-07 12:16:47 +00:00
luisramos0
bdefc0ebd1 Fix admin orders spec by adapting the spec to the recently de-defaced page 2019-01-07 12:16:28 +00:00
luisramos0
42eb92c40a Add missing translation related to capture payments in the backoffice 2019-01-07 12:16:28 +00:00
luisramos0
503d515930 Fix credit card spec that was depending on current year
After this commit 5d93d1dedb, this static fix was meant to fail 3f33e28839
2019-01-07 12:16:09 +00:00
luisramos0
d3325ed7bb Add translation entries for admin menu tabs.
This was moved to new namespace tab in spree 2, see 4c82bfdf48
2019-01-07 12:15:36 +00:00
Luis Ramos
db6d39cedd Merge pull request #3277 from openfoodfoundation/revert-3246-2-0-create-variants
Revert "[Spree Upgrade] Set on_demand default value to false in test factories"
2019-01-07 11:46:37 +00:00
luisramos0
364f9f9abd Improve variable names in cart spec 2019-01-07 11:40:42 +00:00
Pau Pérez Fabregat
34876cc255 Merge pull request #3275 from openfoodfoundation/transifex
Transifex
2019-01-07 11:43:06 +01:00
Pau Pérez Fabregat
ed8f719769 Merge pull request #3245 from luisramos0/spring
Add spring, a rails preloader alternative to zeus, to our gemfile
2019-01-07 11:07:34 +01:00
luisramos0
2893f1c141 Add test to cover weight calculation bug #3072 2019-01-07 01:18:40 +00:00
Maikel Linke
d2ba305ce6 Fix context data for tax rate finder spec
The spec was accidentally finding an exact tax rate match. The new test
data provides only close matches to choose from.

The naming of variables has been simplified as well.
2019-01-04 18:31:46 +11:00
Maikel Linke
a8ccb9b818 Explain why we look for the closest tax rate of a fee 2019-01-04 17:24:45 +11:00
Luis Ramos
116b842852 Revert "[Spree Upgrade] Set on_demand default value to false in test factories" 2019-01-03 23:54:17 +00:00
Maikel
1024fc1f34 Merge pull request #3273 from coopdevs/fix-fr-BE-link
Fix menu_1_url translation for fr_BE
2019-01-04 09:52:44 +11:00
Transifex-Openfoodnetwork
9da7ff5698 Updating translations for config/locales/fr.yml 2019-01-04 02:15:57 +11:00
Pau Pérez Fabregat
9f0c6a6bac Merge pull request #3251 from openfoodfoundation/dependabot/bundler/webmock-3.5.1
Bump webmock from 3.4.2 to 3.5.1
2019-01-03 11:18:59 +01:00
Pau Perez
edffbd72fe Update rubocop_manual_todo 2019-01-03 11:17:10 +01:00
Pau Perez
ddf916814f Reduce complexity of EnterprisesController#shop
As asked by Rubocop.
2019-01-03 11:17:10 +01:00
Pau Perez
e3edb51d3e Update rubocop_todo 2019-01-03 11:17:10 +01:00
Pau Perez
51da607ab1 Fix too long line 2019-01-03 11:17:10 +01:00
Pau Perez
46760ce28c Do not double-render when there is no stock 2019-01-03 11:17:10 +01:00
Pau Perez
cca15e75a6 Refactor to reveal how we load enterprises in shop
By sticking to Rails conventions we make it more obvious how (badly) we
are loading enterprises in EnterprisesController#shop and shed some
light on the obscure InjectionHelper.

This will also make it easier to improve its performance in the future as
it's among the top offenders. See https://www.skylight.io/app/applications/ibo3NOqCYMnq/1545851520/1d/endpoints/EnterprisesController%23shop?responseType=html
2019-01-03 11:17:10 +01:00
Maikel
ac76580932 Merge pull request #3274 from openfoodfoundation/transifex
Transifex
2019-01-03 11:35:47 +11:00
Transifex-Openfoodnetwork
89bf819b37 Updating translations for config/locales/en_US.yml 2019-01-03 00:33:56 +11:00
Pau Perez
112080d8c6 Fix menu_1_url translation for fr_BE
The first menu item in OFN BE is currently broken.
2019-01-02 13:10:33 +01:00
Maikel
832dca9742 Merge pull request #3247 from coopdevs/fix-anonymous-checkout-spec
[Spree Upgrade] Provide anonymous user instead of nil
2019-01-02 18:13:06 +11:00
Maikel
63ec4b59fe Merge pull request #3246 from luisramos0/2-0-create-variants
[Spree Upgrade] Set on_demand default value to false in test factories
2019-01-02 18:02:34 +11:00
Maikel
f68fd6eea9 Merge pull request #3242 from luisramos0/2-0-line-item-destroy
[Spree Upgrade] Fix line item destroy by forcing quantity to zero and update_inventory
2019-01-02 17:44:25 +11:00
Maikel
a3b7364c75 Merge pull request #3241 from luisramos0/2-0-checkout-out-of-stock
[Spree Upgrade] Fix checkout_controller_spec
2019-01-02 17:37:34 +11:00
Maikel
3ec7ccb12c Merge pull request #3240 from luisramos0/2-0-orders-ctrl-api
[Spree Upgrade] Fix api orders controller spec broken tests
2019-01-02 17:36:40 +11:00
Maikel
d5c48d7c41 Merge pull request #3239 from luisramos0/2-0-ship-method-restart-checkout
[Spree Upgrade] Fix restart checkout spec
2019-01-02 17:33:48 +11:00
dependabot[bot]
8170937708 Bump webmock from 3.4.2 to 3.5.1
Bumps [webmock](https://github.com/bblimke/webmock) from 3.4.2 to 3.5.1.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.4.2...v3.5.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-27 19:16:35 +00:00
Pau Pérez Fabregat
d88be202a6 Merge pull request #3223 from kristinalim/fix-rubocop_block_length_ignore_rake_routes_dsl
Ignore Rake and routes DSL methods in Rubocop BlockLength
2018-12-27 17:14:57 +01:00
Pau Pérez Fabregat
755eca5abe Merge pull request #3236 from openfoodfoundation/dependabot/bundler/guard-2.15.0
Bump guard from 2.14.1 to 2.15.0
2018-12-27 17:14:32 +01:00
Alvaro Chalar
6dccbeca70 Add custom footer message in reports section 2018-12-27 12:22:48 +01:00
Pau Perez
3e793652e8 Provide anonymous user instead of nil
As explained in
0181835fb6/app/models/spree/user.rb (L26-L32),
all orders have a user so checking out as a guest is just using an
automatically generated user by means of `.anonymous!`.
2018-12-27 12:18:27 +01:00
luisramos0
467623f000 Sets StockLocation.backorderable_default to false in test factories
This makes the default value of variant.on_demand be false
2018-12-26 22:16:05 +00:00
luisramos0
fd21914a15 Add spring, a rails preloader alternative to zeus, to our gemfile
Add /bin to gitignore, bin is used by spring, rails preloader
2018-12-26 13:36:48 +00:00
luisramos0
4eaaeb37c9 Reverting to therubyracer because mini racer is causing trouble to some developers using osx.
We will probably be able to move back to the faster mini racer when we upgrade to newer rails versions
2018-12-26 13:07:52 +00:00
luisramos0
d44c4778e1 Improve line item code by merging multiple destroy hooks into a single hook: update_inventory_on_destroy. This makes the code easier to read 2018-12-24 16:39:06 +00:00
Pau Pérez Fabregat
1ab50798fe Merge pull request #3189 from luisramos0/3043-i18n-emails
Make all mailers use appropriate locale when sending emails
2018-12-24 14:59:04 +01:00
luisramos0
429e513a77 Improve line_item code by moving order.shipment reload to a line_item after_destroy hook 2018-12-23 09:15:18 +00:00
luisramos0
b83ec8d357 Add order.shipments reload to line_item.update_inventory. This is necessary when destroying line items as update_inventory may delete the shipment from the order 2018-12-23 00:23:49 +00:00
luisramos0
26b5250f2c Fix line item destroy by forcing quantity to zero and update_inventory before_destroy so that the variant is restocked 2018-12-22 23:27:27 +00:00
luisramos0
4dd41bae9c Change out of stock message in spec. Now the checkout controller is returning the error message, not the line items validator 2018-12-21 21:50:13 +00:00
luisramos0
c2e05e7d87 In api orders controller spec, remove inventory_units_shipment_id_null as the filter was removed in spree 2
Also set the distributor used in the tests on completed_order_with_fees so results for that distributor are correct
2018-12-21 16:10:31 +00:00
luisramos0
8970131685 In restart checkout spec, create failed payment before the valid payment otherwise the failed payment will invalidate the previous payment, even if it is a good one
In spree 2, every new payment will invalidate all previous payments in the order
See here: c9eebba4f7
2018-12-21 15:13:52 +00:00
luisramos0
7155f28acf Remove shipping_method_id from RestartCheckout, destroying shipments is now enough as order.shipping_method_id is no longer used and will be dropped. See #2683 for more details 2018-12-21 15:13:43 +00:00
Luis Ramos
1007addddb Merge pull request #3232 from luisramos0/2-0-out-of-stock
[Spree Upgrade] Scope variants in line items availability validator
2018-12-21 12:05:43 +00:00
Luis Ramos
6935bfdf8b Merge pull request #3210 from luisramos0/2-0-bom-on-hand
[Spree Upgrade] Fix availability validator to include inventory_units in it's validation
2018-12-21 12:04:18 +00:00
luisramos0
6c70998b64 Move StockLocation.fill_status to VariantStock so we can easily override it 2018-12-21 11:33:07 +00:00
luisramos0
17ced61b3d Override Spree::Variant.in_stock? in VariantStock so that we don’t depend on Spree::Stock::Quantifier 2018-12-21 11:33:07 +00:00
luisramos0
1835d97013 Adapt line_item.sufficient_stock? to spree 2 2018-12-21 11:33:07 +00:00
luisramos0
d641705053 Add variant scoping to availability_validator_decorator by using line_item.scoper and moving Spree::Stock::Quantifier.can_supply? to VariantStock so that it becomes overridable 2018-12-21 11:33:07 +00:00
luisramos0
c0a095ffaf Improve variant_overrides_spec variable names 2018-12-21 11:33:07 +00:00
luisramos0
4f79fd5be0 Improve availability validator spec readability and remove unnecessary expect statements 2018-12-21 11:19:12 +00:00
albarnaz
5d515712ed Fix for instagram links (#2849)
* Add new attribute instagram_placeholder to local yml

* Add placeholder to instagram link input

* Add migration to fix wrong instagram links

* Add new attribute facebook_placeholder to local yml

* Add placeholder to facebook link input

* Add new attribute linkedin_placeholder to local yml

* Add placeholder to linkedin link input

* Change each for find_each in migration

* Add new attribute instagram_placeholder to local yml

* Add migration to fix wrong instagram links

* Add new attribute linkedin_placeholder to local yml

* Add placeholder to linkedin link input
2018-12-21 14:42:28 +11:00
Maikel
9557457ec2 Merge pull request #3088 from kristinalim/cleanup-test_scripts
Run RSpec tests in custom engines (and some fixes, cleanup)
2018-12-21 14:32:56 +11:00
dependabot[bot]
e680559169 Bump guard from 2.14.1 to 2.15.0
Bumps [guard](https://github.com/guard/guard) from 2.14.1 to 2.15.0.
- [Release notes](https://github.com/guard/guard/releases)
- [Changelog](https://github.com/guard/guard/blob/master/CHANGELOG.md)
- [Commits](https://github.com/guard/guard/compare/v2.14.1...v2.15.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-20 19:18:59 +00:00
Pau Pérez Fabregat
e61b7139cc Merge pull request #3212 from openfoodfoundation/dependabot/bundler/wkhtmltopdf-binary-0.12.4
Bump wkhtmltopdf-binary from 0.12.3.1 to 0.12.4
2018-12-20 16:43:24 +01:00
Pau Pérez Fabregat
0876986215 Merge pull request #3227 from openfoodfoundation/dependabot/bundler/momentjs-rails-2.20.1
Bump momentjs-rails from 2.5.1 to 2.20.1
2018-12-20 16:36:40 +01:00
luisramos0
c1aeb2e9a3 Improve naming in availability_validator_decorator and cover it with tests 2018-12-20 14:26:34 +00:00
luisramos0
bc22b0a58e Fix capping quantity to stock levels by always validating line items with quantity zero
Stock::Quantifier.can_supply? returns false for an input of zero when stock level is negative
2018-12-20 14:26:34 +00:00
luisramos0
3085e15961 Fix order factory by making line_item.skip_stock_check work in spree 2 2018-12-20 14:26:34 +00:00
luisramos0
88b1bb61d6 Fix availability validator to include inventory_units in it's validation 2018-12-20 14:26:34 +00:00
dependabot[bot]
aac8706f9a Bump blockenspiel from 0.4.5 to 0.5.0
Bumps [blockenspiel](https://github.com/dazuma/blockenspiel) from 0.4.5 to 0.5.0.
- [Release notes](https://github.com/dazuma/blockenspiel/releases)
- [Changelog](https://github.com/dazuma/blockenspiel/blob/master/History.rdoc)
- [Commits](https://github.com/dazuma/blockenspiel/commits/v0.5.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-20 08:35:01 +00:00
Pau Pérez Fabregat
2a759a9c0d Merge pull request #3196 from openfoodfoundation/dependabot/bundler/angularjs-file-upload-rails-2.4.1
Bump angularjs-file-upload-rails from 1.1.6 to 2.4.1
2018-12-20 09:31:49 +01:00
Maikel
073f88b1c2 Merge pull request #3198 from kristinalim/fix-variant_override_stock_settings_validation
Validation and others for keeping variant override "On Demand" and "Count on Hand" compatible
2018-12-20 14:05:20 +11:00
Kristina Lim
4adae0a1e8 Disable Knapsack when running engine RSpec tests 2018-12-19 17:50:52 +08:00
Kristina Lim
a460e9d35f Allow disabling Knapsack when running RSpec tests 2018-12-19 17:50:29 +08:00
Luis Ramos
0aaa41ced0 Merge pull request #3228 from luisramos0/2-0-stable-dec-18th
[Spree Upgrade] Merging master into 2-0-stable (third run in Dec2018)
2018-12-19 09:30:57 +00:00
Kristina Lim
abcb71f8b3 Document running app engine RSpec tests 2018-12-19 17:11:03 +08:00
Kristina Lim
12780b722e Make Travis CI run RSpec tests in app engines 2018-12-19 17:08:27 +08:00
Kristina Lim
74ea1eee6b Add description for Rake tasks 2018-12-19 17:08:24 +08:00
Kristina Lim
571ad37c3e Add Rake task openfoodnetwork:specs:engines:rspec 2018-12-19 17:06:33 +08:00
Kristina Lim
f7e03ca60e Add Rake tasks openfoodnetwork:specs:engines:NAME:rspec
The task name follows the directory name under engines/. For example,
for the Web engine in engines/web, run:

    bundle exec rake openfoodnetwork:specs:engines:web:rspec
2018-12-19 17:02:19 +08:00
Maikel
4201549992 Merge pull request #3219 from luisramos0/2-0-payment-ctrl
[Spree Upgrade] Adapt payment controller spec to spree 2
2018-12-19 15:23:11 +11:00
Maikel Linke
a978e992bf Remove tax_rates shortcut from adjustment
Becoming less dependent on Spree, using our own namespace, keeping
decorators small.
2018-12-19 14:42:38 +11:00
Maikel Linke
fc1b182275 Simplify method complexity and comply with rubocop 2018-12-19 14:31:29 +11:00
Maikel Linke
3169a384ba Find approximate tax rate if no other is found
There are several cases in which a tax rate is not associated with an
adjustment. We find the closest one for reporting here. It is not a good
solution, but a workaround introduced for reporting:
https://github.com/openfoodfoundation/openfoodnetwork/pull/1496
2018-12-19 14:31:29 +11:00
Maikel Linke
a341561446 Move tax rate finding into service and spec it
The `#tax_rates` method is actually not present in Spree. We encapsulate
the logic in this commit and enable better unit testing. The new tests
cover a current bug: https://github.com/openfoodfoundation/openfoodnetwork/issues/3127
2018-12-19 14:31:29 +11:00
luisramos0
6fc3562a73 Merge branch 'master' into 2-0-stable-dec-18th 2018-12-18 23:32:45 +00:00
Maikel
84f2f9af3c Merge pull request #3156 from HugsDaniel/3121-deface-payment-methods-new
[Defacepocalypse] De-deface payment methods new and form
2018-12-19 09:44:57 +11:00
dependabot[bot]
6de1844b7c Bump momentjs-rails from 2.5.1 to 2.20.1
Bumps [momentjs-rails](https://github.com/derekprior/momentjs-rails) from 2.5.1 to 2.20.1.
- [Release notes](https://github.com/derekprior/momentjs-rails/releases)
- [Changelog](https://github.com/derekprior/momentjs-rails/blob/master/news.md)
- [Commits](https://github.com/derekprior/momentjs-rails/compare/v2.5.1...v2.20.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-18 19:14:54 +00:00
luisramos0
5e960512ac Set user locale on user registrations #create
This is done so that user.locale is used in the first confirmation email. This also stores user.locale in the DB from registration.
2018-12-18 15:30:01 +00:00
luisramos0
a9222665b8 Refactor user registrations controller, early return to reduce indentation 2018-12-18 15:26:49 +00:00
Pau Pérez Fabregat
0c8cb8abe2 Merge pull request #3218 from coopdevs/handle-soft-deleted-products-in-serializer-spec
Handle soft deleted products in serializer spec
2018-12-18 08:59:36 +01:00
Maikel
f36c045425 Merge pull request #3213 from kristinalim/fix-rubocop_block_length_ignore_it
Ignore `it` in Rubocop BlockLength
2018-12-18 11:42:14 +11:00
Matt-Yorkley
d34b8c52b8 Update all locales with the latest Transifex translations 2018-12-17 11:17:54 +00:00
Pau Pérez Fabregat
54775f6b6a Merge pull request #3221 from zvkemp/skylight-1.7.2
update Skylight to 1.7.2
2018-12-17 10:44:16 +01:00
Pau Pérez Fabregat
1876ec42dc Merge pull request #3201 from kevinchristianson/add-missing-stars
Add missing 'required field' stars in new product form
2018-12-17 10:36:51 +01:00
Pau Pérez Fabregat
554d650b8c Merge pull request #3176 from kevinchristianson/button-translation-fix
Fix untranslated buttons at image step of registration modal
2018-12-17 10:36:07 +01:00
Pau Pérez Fabregat
2deffb9c9f Merge pull request #3076 from Matt-Yorkley/orders_checkboxes
Fix checkbox values on orders page
2018-12-17 10:35:46 +01:00
Luis Ramos
dc6509aa83 use association on updates rather than #find
Co-Authored-By: sauloperez <saulopefa@gmail.com>
2018-12-17 10:31:52 +01:00
Kristina Lim
216c598e74 Ignore more methods in Metrics/BlockLength cop
Ignore these additional methods:

* collection
* member
* namespace
* resource
* resources
2018-12-17 05:21:20 +08:00
Kristina Lim
fb5a9356dc Fix spec_helper.rb of web engine
This fixes the tests of the web engine when running the following from
its root: bundle exec rspec

An engine is meant to have some independence from the main application,
and its tests should be run independently.

This should be using the engine's own dummy application, actually, or
the dummy application of a dependency.
2018-12-15 16:11:15 +08:00
Kristina Lim
93940ced3a Remove outdated comment recommending knapsack
We are already using this.
2018-12-15 16:11:12 +08:00
zvkemp
d3d43c8808 update Skylight to 1.7.2 2018-12-14 12:25:41 -08:00
luisramos0
a5bf7a1f35 Adapt payment controller spec to spree 2
In spree 2, since 5ed6015916, to fire a payment event the order needs to be in either payment or complete state
2018-12-14 16:04:19 +00:00
Pau Pérez Fabregat
fe0c56c800 Merge pull request #3174 from kevinchristianson/footer-url-fix
Fix broken registration link in footer
2018-12-14 15:42:08 +01:00
dependabot[bot]
2f19b37b54 Bump angularjs-file-upload-rails from 1.1.6 to 2.4.1
Bumps [angularjs-file-upload-rails](https://github.com/marthyn/angularjs-file-upload-rails) from 1.1.6 to 2.4.1.
- [Release notes](https://github.com/marthyn/angularjs-file-upload-rails/releases)
- [Commits](https://github.com/marthyn/angularjs-file-upload-rails/commits/v2.4.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-14 14:29:42 +00:00
Pau Pérez Fabregat
34a42cc592 Merge pull request #3181 from luisramos0/roadie-rails-upgrade
Bump roadie-rails from 1.0.3 to 1.1.1
2018-12-14 15:26:25 +01:00
Pau Perez
be6c8be07a Handle soft deleted products when refreshing cache
Since cd3add960e Spree soft-deletes products and as such the models not
destroyed but updated setting a value for the `deleted_at` field.

This turns what used to be deletes into updates thus triggering AR's
update callbacks instead of the destroy ones. As a result, this bypasses
the logic to refresh the products cache on destroy and hits the
`after_save` callback.

Furthermore, since act_as_paranoid (the soft-delete gem Spree uses) uses
a default scope to avoid retrieving soft-deleted records we need to
purposefully fetch them in order to refresh the cache.
2018-12-14 15:13:06 +01:00
Pau Perez
51e277a183 Make test setup more readable 2018-12-14 15:12:41 +01:00
Kristina Lim
d0d10eba4b Ignore it method in Rubocop BlockLength 2018-12-14 17:44:19 +08:00
Kristina Lim
77a6562762 Make DB migration generate summary by distributor 2018-12-14 13:02:43 +08:00
Kristina Lim
a6664d0ac6 Move report generated by migration to subdirectory
This is in preparation of an upcoming change to split the main CSV file
by distributor.
2018-12-14 13:00:42 +08:00
Kristina Lim
91e5a523f0 Add /reports/ to .gitignore but ignore README
Using the first slash to make sure that other reports/ directories are
not ignored.
2018-12-14 10:25:23 +08:00
Kristina Lim
d859939c79 Add README.md to reports/ directory 2018-12-14 10:24:26 +08:00
Kristina Lim
6458127892 Add undo logic for DB migration script 2018-12-14 10:09:09 +08:00
Kristina Lim
5a98acd101 Log changes from DB migration to CSV file 2018-12-14 10:09:09 +08:00
Kristina Lim
842a11b564 Refactor DB migration script 2018-12-14 10:09:08 +08:00
Maikel
24ca66bd71 Merge pull request #3207 from luisramos0/2-0-insuf-stock-transl
[Spree Upgrade] Add missing spree translations related to insufficient stock
2018-12-14 12:05:06 +11:00
Maikel
1ed880e353 Merge pull request #3206 from coopdevs/fix-redirection-on-admin-products-specs
[Spree Upgrade] Fix redirection on admin products specs
2018-12-14 11:59:21 +11:00
Maikel
f0d3992511 Merge pull request #3203 from luisramos0/2-0-fix-prod-images-delete
[Spree Upgrade] Fix product properties and images deletion
2018-12-14 11:54:05 +11:00
dependabot[bot]
2ecec93514 Bump wkhtmltopdf-binary from 0.12.3.1 to 0.12.4
Bumps [wkhtmltopdf-binary](https://github.com/zakird/wkhtmltopdf_binary_gem) from 0.12.3.1 to 0.12.4.
- [Release notes](https://github.com/zakird/wkhtmltopdf_binary_gem/releases)
- [Changelog](https://github.com/zakird/wkhtmltopdf_binary_gem/blob/master/CHANGELOG)
- [Commits](https://github.com/zakird/wkhtmltopdf_binary_gem/compare/0.12.3.1...0.12.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-13 19:19:36 +00:00
Pau Pérez Fabregat
2eb6d0a047 Merge pull request #3185 from openfoodfoundation/dependabot/bundler/oj-3.7.4
Bump oj from 3.6.10 to 3.7.4
2018-12-13 18:10:55 +01:00
Kristina Lim
aa92dd8771 Declare VariantOverride in migration for safe use 2018-12-13 23:29:05 +08:00
Kristina Lim
9e3332ba2a Rename DB migration file 2018-12-13 23:25:48 +08:00
Maikel
eb016c0471 Merge pull request #3145 from openfoodfoundation/dependabot/bundler/i18n-js-3.1.0
Bump i18n-js from 3.0.11 to 3.1.0
2018-12-13 10:58:22 +11:00
Maikel
eedba7a35b Merge pull request #3197 from luisramos0/2-0-product-stock
[Spree Upgrade] Adapt Product level stock management to Spree 2
2018-12-13 10:53:46 +11:00
Pau Pérez Fabregat
d317603872 Merge pull request #3187 from openfoodfoundation/dependabot/bundler/rspec-rails-3.8.1
Bump rspec-rails from 3.7.2 to 3.8.1
2018-12-12 17:14:05 +01:00
Pau Pérez Fabregat
64e41712c6 Merge pull request #3130 from coopdevs/extract-restart-checkout
Extract restart checkout
2018-12-12 17:12:53 +01:00
luisramos0
5183c90c89 Add missing spree translations related to insufficient stock 2018-12-12 15:34:48 +00:00
Pau Perez
43cacfc2fc Fix redirection on admin/products controller specs
In Spree v2.0 the product attributes being sent were no longer valid.
Providing a shipping category and setting a stock location on the DB so
that a stock item can be created fixes them.

Remember `Variant#create_stock_item`, which is defined as an
`after_create` callback, relies on `StockLocation` to create the item.
2018-12-12 13:10:39 +01:00
luisramos0
47be452ca0 Make ProductsController#create and #update work by not mass-assigning the provided on_hand and on_demand values and set them in product variant after the product is created 2018-12-12 12:10:29 +00:00
luisramos0
66e69edca4 Rename ProductOnDemand to ProductStock; move product.on_hand into it; add product.on_demand; and remove unnecessary on_demand= 2018-12-12 12:10:25 +00:00
Pau Perez
28cb1bf687 Clarify nasty boolean logic on method 2018-12-12 12:57:23 +01:00
luisramos0
181915c63a Fix deletion of product properties 2018-12-11 15:53:40 +00:00
luisramos0
4b74e50353 Make ProductsController#bulk_update work by making ProductSet#create_variant not mass-assigning the provided on_hand and on_demand values and set them after each variant is created 2018-12-11 15:18:00 +00:00
luisramos0
b5379a204b Fix deletion of product images 2018-12-11 15:10:26 +00:00
luisramos0
e274442d77 Cover i18nhelper.valid_locale and user mailer with tests related to localized emails 2018-12-11 11:16:50 +00:00
Maikel
1819fc8493 Merge pull request #3199 from luisramos0/2-0-stable-dec-10th
[Spree Upgrade] Merging master into 2-0-stable (second run in Dec2018)
2018-12-11 18:50:24 +11:00
Pau Pérez Fabregat
7834fa4d00 Merge pull request #3190 from luisramos0/2-0-new-product
[Spree Upgrade] Fix "new product" page specs and an html issue
2018-12-11 08:35:26 +01:00
haseleyi
835617159e Add missing 'required field' stars in new product form 2018-12-10 18:02:39 -08:00
Maikel
d63ae792b3 Merge pull request #2775 from luisramos0/2-0-checkout-ship-method
[Spree Upgrade] Handle shipping_method_id in checkout
2018-12-11 11:59:03 +11:00
Matt-Yorkley
0c5ac99e0f Fix multiple results with 'inventory_items_shipment_id_null' ransack query
The q['inventory_items_shipment_id_null'] search element was generating duplicates where there were multiple line items on an order that were ready to be shipped, with id = null
2018-12-10 20:48:53 +00:00
Matt-Yorkley
e711c5ed03 Add spec for search filters 2018-12-10 20:48:53 +00:00
Matt-Yorkley
d48774e3a2 Add comment 2018-12-10 20:48:53 +00:00
Matt-Yorkley
997169b974 Fix checkbox values on orders page 2018-12-10 20:48:53 +00:00
luisramos0
cdee7c0422 Merge branch 'master' into 2-0-stable-dec-10th 2018-12-10 16:41:29 +00:00
Luis Ramos
1bc51dea40 Merge pull request #3195 from mkllnk/2938-fix-create-order
[Spree Upgrade] 2938 Fix Create Order in Admin - missing translation
2018-12-10 13:20:02 +00:00
Pau Pérez Fabregat
b8a61257da Merge pull request #3188 from luisramos0/2-0-ctrl-specs
[Spree Upgrade] Fix line_item_controller spec by adpating to new spree 2 factories
2018-12-10 12:31:26 +01:00
luisramos0
4f4fc00549 Improve code, specs and comments in the shipping_method selection process in the checkout controller 2018-12-09 20:05:10 +00:00
luisramos0
38ff99717a Fix bug on calculator_decorator line_items_for where input is line_item with an nil order. Adapted line_items_for so that weight_calculator.line_items_for could be removed. 2018-12-09 19:37:11 +00:00
Kristina Lim
df51d137dc Update some code style for product import 2018-12-10 03:30:52 +08:00
Kristina Lim
cec50e81f5 Make product import set correct VO stock settings 2018-12-10 03:30:46 +08:00
Kristina Lim
0de829017a Refactor finding or initializing VO for product import 2018-12-10 03:30:39 +08:00
Kristina Lim
c873a7b8e3 Move stock settings override validation to concern 2018-12-09 23:29:36 +08:00
Kristina Lim
1bfdb708c1 Add app/models/concerns to autoload path 2018-12-09 23:29:36 +08:00
Kristina Lim
d67b3faf01 Address affected specs from new VO validations 2018-12-09 21:48:08 +08:00
Kristina Lim
34313c94ca Make reset stock settings for VO force limited stock 2018-12-09 21:47:05 +08:00
Kristina Lim
ad35ea1102 Add factory stock traits for variant overrides 2018-12-09 21:47:05 +08:00
Kristina Lim
210a11783c Test that saving invalid variant override provides error 2018-12-09 21:43:57 +08:00
luisramos0
8fb103ce8d Fix new_product div in new product page 2018-12-08 14:53:50 +00:00
luisramos0
7ecce51b8b Create default stock location and set required product.shipping_category in specs that create products 2018-12-08 14:52:50 +00:00
Maikel Linke
cac4fa4816 Use I18n.t instead of Spree's JS t function 2018-12-07 23:38:05 +11:00
Kristina Lim
4c0c0bbfd0 Simplify stock configuration in existing variant overrides 2018-12-07 14:40:15 +08:00
Kristina Lim
83b6973bc2 Require compatible VO on_demand and count_on_hand 2018-12-07 14:39:36 +08:00
Maikel
046ba14da4 Merge pull request #3191 from openfoodfoundation/dependabot/bundler/knapsack-1.17.1
Bump knapsack from 1.16.0 to 1.17.1
2018-12-07 15:18:25 +11:00
haseleyi
3f6e96dd5d Fix comment 2018-12-06 14:07:45 -08:00
haseleyi
4a0744dd94 Add comment to explain hard-coded link 2018-12-06 11:49:39 -08:00
dependabot[bot]
6ae2df7b92 Bump knapsack from 1.16.0 to 1.17.1
Bumps [knapsack](https://github.com/ArturT/knapsack) from 1.16.0 to 1.17.1.
- [Release notes](https://github.com/ArturT/knapsack/releases)
- [Changelog](https://github.com/ArturT/knapsack/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ArturT/knapsack/compare/v1.16.0...v1.17.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-06 19:16:09 +00:00
luisramos0
b9b91231ae Fix rubocop issues in mailers 2018-12-06 14:18:24 +00:00
luisramos0
0f442a911e Improve I18nHelper.valid_locale to handle empty objects 2018-12-06 12:48:48 +00:00
luisramos0
feea499298 Make all mailers use appropriate locale when sending emails 2018-12-06 11:45:44 +00:00
Kristina Lim
71db9f5289 Import CSS variables in admin/components/input 2018-12-06 14:08:06 +08:00
Maikel
da6dc20fcf Merge pull request #3165 from coopdevs/fix-send-confirmation-instructions-specs
[Spree Upgrade] Fix send confirmation instructions specs
2018-12-06 16:24:40 +11:00
Maikel
883e9bbdd8 Merge pull request #3166 from luisramos0/2-0-orders-tab-without-shipments
[Spree Upgrade] Remove shipments option from orders tab (gone in spree 2)
2018-12-06 15:39:14 +11:00
luisramos0
c33ca508f7 Add guard clause on variant overrides filter in case hub id is not present in the hubPermissions 2018-12-06 15:35:44 +11:00
Maikel
1b94b10bb0 Merge pull request #3171 from luisramos0/2-0-var-over-hide
[Spree Upgrade] Remove hide class from the hide button in the inventory list
2018-12-06 15:21:34 +11:00
Maikel
3a3c9f3847 Merge pull request #3177 from coopdevs/dont-clean-db-twice-in-feature-specs
Do not clean DB twice on feature specs
2018-12-06 12:36:34 +11:00
luisramos0
7df869bd35 Fix line_item_controller spec by adpating to new spree 2 factories 2018-12-05 22:22:15 +00:00
haseleyi
75277e92e4 Lazy-load the translations for images step of registration 2018-12-05 11:36:27 -08:00
dependabot[bot]
727cc9d578 Bump rspec-rails from 3.7.2 to 3.8.1
Bumps [rspec-rails](https://github.com/rspec/rspec-rails) from 3.7.2 to 3.8.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.7.2...v3.8.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-05 19:19:50 +00:00
dependabot[bot]
ebff8be996 Bump oj from 3.6.10 to 3.7.4
Bumps [oj](https://github.com/ohler55/oj) from 3.6.10 to 3.7.4.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.6.10...v3.7.4)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-12-05 19:16:55 +00:00
luisramos0
afd243c548 Replace stub with allow in checkout_controller_spec 2018-12-05 15:40:14 +00:00
luisramos0
bbc61b4eda Bump roadie-rails to 1.1.1 2018-12-05 15:11:45 +00:00
Pau Pérez Fabregat
1052d98255 Merge pull request #3175 from haseleyi/patch-1
Fix link to Mac setup guide in Getting Started
2018-12-05 12:52:08 +01:00
luisramos0
460e010408 Removed shipments from orders tab. This option is removed in spree 2 2018-12-05 11:38:16 +00:00
Pau Pérez Fabregat
72a4b4f8e2 Merge pull request #3158 from luisramos0/2-0-vos-scoping
[Spree Upgrade] Scopes variants on order completion and on changes to completed orders
2018-12-05 12:12:49 +01:00
Kristina Lim
842a8e3654 Move null option for VO use_producer_settings to JS 2018-12-05 17:40:32 +08:00
Kristina Lim
802e3bb447 Refactor choosing VO on_demand in feature specs
We are still using the Rails view I18n scope for :use_producer_settings.
Angular requires this replacement of the default blank option, which we
use for nil on_demand, to be in the template itself.

If we eventually move this template to a JS template, we can move it to
the same I18n scope as the :yes and :no options.
2018-12-05 17:40:31 +08:00
Kristina Lim
d8908bdf4b Remove unused translation keys js.yes and js.no 2018-12-05 17:40:31 +08:00
Kristina Lim
47d51ca525 Prefer guard clause in updateCountOnHand for VOs 2018-12-05 17:40:31 +08:00
Kristina Lim
34c34b94d1 Describe method countOnHandPlaceholder for VOs 2018-12-05 17:40:30 +08:00
Kristina Lim
cff4eb0005 Improve and simplify VO count on hand suggestions
Set variant override count_on_hand in UI to variant count_on_hand value
if on_demand is changed and both specify limited stock.
2018-12-05 17:40:30 +08:00
Kristina Lim
4f2d96d763 Use correct placeholders for VO count_on_hand 2018-12-05 17:40:29 +08:00
Kristina Lim
f5dc03e118 Style disabled text fields in admin pages 2018-12-05 17:40:29 +08:00
Kristina Lim
09b9f968b7 Make VO count on hand readonly unless limited stock 2018-12-05 17:40:29 +08:00
Kristina Lim
cc003c99d5 Ensure in UI compatible VO count and on demand 2018-12-05 17:40:28 +08:00
Kristina Lim
a32bb0445f Change translation for variant override use_producer_settings 2018-12-05 17:40:28 +08:00
Kristina Lim
7ae555cd9c Translate variant override on_demand yes and no 2018-12-05 17:40:27 +08:00
Kristina Lim
4b3198a2b4 Allow reset of "on demand" for variant overrides
Change the UI control for "on demand" in the Inventory page from a
checkbox to a SELECT field with three options: nil, true, and false.

This resolves the following issues:
* There is no way to tell between nil and false - both are represented
by an unticked checkbox.
* There is no way to go back to nil.
2018-12-05 17:40:24 +08:00
Pau Perez
6af8544c52 Restore perform_deliveries value in tests 2018-12-05 10:20:13 +01:00
Pau Perez
25eb297215 Perform delivery when checking deliveries in specs 2018-12-05 10:05:39 +01:00
Pau Perez
064d9cf183 Do not hide flaky tests under endless retries
If it fails, needs fixing, not hiding the problem and making the test
suite longer.
2018-12-05 10:05:39 +01:00
Pau Perez
5845f80af0 Remove commented out code
Because git keeps it for you.
2018-12-05 10:05:39 +01:00
Pau Perez
6594529cda Fix manager invitation controller spec 2018-12-05 10:05:39 +01:00
Pau Perez
25567d6bd6 Do not clean DB twice on feature specs
It turns out that we were executing `DatabaseCleaner.clean` on two
`after(:each)` blocks. One for all specs and another one for `js: true`
specs. As a result feature specs were hitting both which slows them down
considerably.

On my machine this changes consistently saves 2sec on
`spec/features/consumer/shops_spec.rb` but chances are it has an
accumulative effect when run on the whole test suite.
2018-12-05 09:58:14 +01:00
Pau Pérez Fabregat
3b56212290 Merge pull request #3151 from coopdevs/remove-frontoffice-enterprises-n+1
Remove frontoffice enterprises n+1
2018-12-05 08:12:19 +01:00
Pau Pérez Fabregat
e5a267f4c2 Merge pull request #2735 from luisramos0/cookies_colors
Moved definition of colors in the cookies modal and banner colors to common darkswarm/base/colors
2018-12-05 08:06:58 +01:00
haseleyi
94d12217de Fix untranslated buttons at image step of registration modal 2018-12-04 21:30:42 -08:00
Isaac Haseley
76e5d281bf Fix link for Mac setup guide 2018-12-04 20:37:23 -08:00
Maikel
609a4fde4d Merge pull request #3173 from openfoodfoundation/transifex
Transifex
2018-12-05 11:55:29 +11:00
Maikel
a2c8bea147 Merge pull request #3147 from luisramos0/2-0-vos
[Spree Upgrade] Adapt variant overrides to spree 2
2018-12-05 10:50:20 +11:00
Transifex-Openfoodnetwork
18a5f53330 Updating translations for config/locales/fr.yml 2018-12-05 09:17:00 +11:00
haseleyi
e863c3dec8 Fix broken link in register call partial 2018-12-04 10:23:46 -08:00
Pau Pérez Fabregat
24415226bf Merge pull request #3168 from luisramos0/google-maps-comment-specs
Temporarily xit 2 broken specs (shops and producers search by url)
2018-12-04 19:13:40 +01:00
Transifex-Openfoodnetwork
9bedc69df8 Updating translations for config/locales/en_GB.yml 2018-12-05 04:52:44 +11:00
luisramos0
02d0b7e88c Improve comment on VariantStock#move 2018-12-04 15:25:38 +00:00
Pau Pérez Fabregat
30e7d32cea Merge pull request #3157 from coopdevs/fix-producer-mailer-specs
[Spree Upgrade] Specify :mailer type in specs
2018-12-04 15:21:17 +01:00
luisramos0
7dc208fb8c Temporarily move 2 broken specs to pending (shops and producers search by url) due to google maps api changes 2018-12-04 13:20:20 +00:00
luisramos0
7f7e7ea65e Remove hide class from the hide button in the inventory list
The hide button should not be hidden. The hide css class was no active in v1 but it is in v2, so we need to remove it
2018-12-04 10:55:55 +00:00
Maikel Linke
66585e93a8 Update all locales with the latest Transifex translations 2018-12-04 14:48:03 +11:00
Maikel
60c8147391 Merge pull request #3164 from luisramos0/2-0-stable-dec-3rd
[Spree Upgrade] Merging master into 2-0-stable (first run in Dec2018)
2018-12-04 13:38:02 +11:00
Maikel
214235d8dd Merge pull request #3152 from coopdevs/fix-product-spec
[Spree Upgrade] Fix product spec
2018-12-04 12:07:33 +11:00
luisramos0
3776b891ce Merge branch 'master' into 2-0-stable-dec-3rd 2018-12-03 15:30:16 +00:00
Pau Perez
46bf4c9eea Specify :mailer type in specs
According to RSpec docs we need to specify type: :mailer for mails to
work. Check it out:
https://relishapp.com/rspec/rspec-rails/v/3-8/docs/mailer-specs.

This fixes all specs in producer_mailer_spec.rb.
2018-12-03 15:41:58 +01:00
luisramos0
258287b88d Add tests to cover CheckoutController#update with shipping_method_id 2018-11-30 17:04:46 +00:00
luisramos0
e23c4dda68 Add order_shipping_method specs to cover select_shipping_method 2018-11-30 12:58:27 +00:00
luisramos0
7a8c65b3ea In the checkout controller update process, grab shipping_method_id from form data and inject it in the order when the order workflow gets to delivery (which is when the order gets shipments created) 2018-11-30 10:46:31 +00:00
luisramos0
c032401eb0 Refactor checkout controller update method 2018-11-30 10:45:42 +00:00
Hugo Daniel
24dab58de7 Lazy load translations and add keys 2018-11-30 10:49:36 +01:00
Maikel
f859b7d3de Merge pull request #3153 from coopdevs/fix-missing-translations-in-password-edit
[Spree Upgrade] Add missing translations causing a test failure
2018-11-30 15:48:42 +11:00
luisramos0
d962358f15 Fix rubocop and transpec models/variant_override and its spec 2018-11-30 00:43:55 +00:00
luisramos0
0577011f5b Refactor variant override model and its spec: simplify move_stock and remove unused methods 2018-11-30 00:22:04 +00:00
luisramos0
782530d93b Scope variants in shipment manifest as they are fetched from DB 2018-11-29 20:43:15 +00:00
luisramos0
a18d289292 Scope variants on line_item before save hook update_inventory 2018-11-29 20:43:10 +00:00
luisramos0
6156aca467 Delegate stock_location.move to variant, and override it in the variant overrides scope 2018-11-29 19:32:52 +00:00
luisramos0
1c5d94472f Make colors.css relative reference to branding.css an absolute reference so that colors can be imported in engines 2018-11-29 18:39:58 +00:00
Pau Pérez Fabregat
08297863be Merge pull request #3047 from mllocs/feature/expand-all-steps-in-checkout-page
Expand all steps in the checkout page by default
2018-11-29 16:28:42 +01:00
Pau Pérez Fabregat
9f17acd63c Merge pull request #3136 from kevinchristianson/dashboard-translation
Add missing translation for 'Has Shopfront' in single-enterprise dashboard
2018-11-29 16:27:05 +01:00
Hugo Daniel
aa948552e1 Import payment_methods edit view and apply overrides 2018-11-29 14:58:14 +01:00
Hugo Daniel
34bc79c7f6 Import payment_methods form partial and apply overrides 2018-11-29 14:58:06 +01:00
Hugo Daniel
29bc4c52a5 Import payment_methods#new view and apply overrides 2018-11-29 14:56:28 +01:00
luisramos0
93e1310deb Fixed bug in cookies css, import colors, not branding 2018-11-29 11:47:51 +00:00
luisramos0
cdc5899791 Moved cookies policy modal and cookies banner colors to darkswarm/base/colors.scss 2018-11-29 11:47:51 +00:00
Luis Ramos
2284bfb604 Merge pull request #3150 from luisramos0/new-knapsack-report
[Spree Upgrade] New up to date knapsack report for 2-0-stable branch
2018-11-29 11:13:51 +00:00
Pau Pérez Fabregat
949efd88ce Merge pull request #3154 from mkllnk/update-db-schema
Update schema for latest migration
2018-11-29 11:34:43 +01:00
Maikel Linke
285346fcda Update schema for latest migration
I feel embarrased that this is the second follow up of my last
migration: https://github.com/openfoodfoundation/openfoodnetwork/pull/3126

The last migration didn't change any database structure, but the schema
still needs the latest migration version. Otherwise it will display
pending migrations when setting up the database.

This commit allows to run `bundle exec rake db:reset` in development
without the following message:

  Run `rake db:migrate` to update your database then try again.
  You have 1 pending migrations:
    20181123012635 AssociateCustomersToUsers

The next pull request with a migration would have solved this problem as
well.
2018-11-29 10:29:56 +11:00
Pau Perez
957c38e4f2 Add missing translations causing a test failure 2018-11-28 18:38:09 +01:00
Pau Perez
7834b1d3f3 Fix test case for invalid product master 2018-11-28 17:39:59 +01:00
Pau Perez
ab542cfdb2 Remove commented out code 2018-11-28 17:39:51 +01:00
Pau Pérez Fabregat
3ea7fac25f Merge pull request #3095 from luisramos0/admin-users-transl
In admin/users, convert Spree.t calls to t calls and use lazy lookup
2018-11-28 17:37:42 +01:00
Pau Pérez Fabregat
8df781887a Merge pull request #3111 from kevinchristianson/pay-list-translation
Add translation for 'Back to Payments List' button in new payment form
2018-11-28 17:03:29 +01:00
Pau Pérez Fabregat
64c12c7a65 Merge pull request #2955 from HugsDaniel/import-spree-views-for-orders#edit
Import Spree views for orders#edit in our codebase
2018-11-28 17:02:40 +01:00
Pau Perez
96202ab00d Fix Rubocop violations 2018-11-28 16:23:56 +01:00
Pau Perez
e0f43191e2 Make helper methods private
Otherwise next dev might think these are attributes of the resulting
JSON serialized object.

They just made the refactoring a bit easier.
2018-11-28 16:21:40 +01:00
Pau Perez
c330d931ce Eager load product properties to avoid N+1
This totally removes the following N+1 query from the GET /shops request

```sql
SELECT "spree_properties".* FROM "spree_properties"
  INNER JOIN "spree_product_properties"
    ON "spree_product_properties"."property_id" = "spree_properties"."id"
  INNER JOIN "spree_products"
    ON "spree_products"."id" = "spree_product_properties"."product_id"
  INNER JOIN "enterprises"
    ON "enterprises"."id" = "spree_products"."supplier_id"
  WHERE "spree_products"."supplier_id" = 24;
```

The product properties of the corresponding enterprises are now loaded
in a single query fired from the controller.
2018-11-28 16:21:40 +01:00
Pau Perez
4608c434b4 Eager load producer properties to avoid N+1
This totally removes the following N+1 query from the GET /shops request

```sql
SELECT "spree_properties".* FROM "spree_properties"
  INNER JOIN "producer_properties"
    ON "spree_properties"."id" = "producer_properties"."property_id"
  WHERE "producer_properties"."producer_id" = 17
  ORDER BY producer_properties.position;
```

The producer properties of the corresponding enterprises are now loaded
in a single query fired from the controller.
2018-11-28 16:21:40 +01:00
Pau Perez
e40c1c08ca Refactor spec to not stub the class under test
This also relies on ActiveRecord which will come in handy as we move on
the refactor.
2018-11-28 16:21:40 +01:00
Pau Perez
149fc1ac6f Inline PropertyMerge's #merge into serializer
Now that it has become a plain Ruby #uniq, there's no point on having
the abstraction and indirection.
2018-11-28 16:21:40 +01:00
Pau Perez
faac5f4b2d Refactor PropertyMerge to use Ruby's #uniq instead 2018-11-28 16:21:40 +01:00
Pau Perez
1363a2a17d Improve readability of spec 2018-11-28 16:21:40 +01:00
Pau Perez
8e1f9a1ba3 Refactor #product_properties not to fetch ids 2018-11-28 16:21:40 +01:00
Pau Perez
bc7258d43b Test #supplied_properties helper methods 2018-11-28 16:21:40 +01:00
Pau Perez
23f629cfd6 Autofix all Rubocop violations in serializer 2018-11-28 13:54:42 +01:00
Pau Perez
c6ab5feb81 Move cached & uncached serializers to their files 2018-11-28 13:54:42 +01:00
Pau Perez
41d988176c Pass enterprises to inject method from controller 2018-11-28 13:54:42 +01:00
Pau Perez
5a85d7a77b RSpec3-ize controller spec 2018-11-28 13:54:42 +01:00
Pau Pérez Fabregat
b9dfaea274 Merge pull request #3143 from coopdevs/setup-rack-mini-profiler
Enable rack-mini-profiler in development
2018-11-28 13:54:27 +01:00
Pau Pérez Fabregat
438cff6e6d Merge pull request #3080 from Matt-Yorkley/pi/french_issue
Pi/french issue
2018-11-28 13:39:04 +01:00
luisramos0
3009ab2f1a New up to date kanpsack report for 2-0-stable branch 2018-11-28 12:36:22 +00:00
Hugo Daniel
69e186f482 Define dynamic classes in variables as a turnaround to HAML bug 2018-11-28 10:31:47 +01:00
Hugo Daniel
65dd3eb5b9 Change line items controller HTML response spec to look for form order_edit class 2018-11-28 10:31:47 +01:00
Hugo Daniel
60214b9a90 Fix failing specs 2018-11-28 10:31:47 +01:00
Hugo Daniel
422a68630f Remove data-hook tags 2018-11-28 10:31:47 +01:00
Hugo Daniel
652191a4c5 Fixing missing variable none 2018-11-28 10:31:47 +01:00
Hugo Daniel
c233ea38cf Import Spree views for orders#edit in our codebase and integrate deface modifications 2018-11-28 10:31:47 +01:00
dependabot[bot]
7b95e3a8d7 Bump i18n-js from 3.0.11 to 3.1.0
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.0.11 to 3.1.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.0.11...v3.1.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-27 19:17:57 +00:00
Luis Ramos
1bc06e7384 Merge pull request #3139 from luisramos0/2-0-bulk-prod-update-spec-fix
[Spree Upgrade] Fix tests in bulk_product_update spec
2018-11-27 18:36:36 +00:00
Pau Pérez Fabregat
c5ae9bdce2 Merge pull request #3132 from luisramos0/2-0-variant-ondemand
[Spree Upgrade] Add VariantStock.on_demand as attribute_accessible
2018-11-27 18:05:34 +01:00
Pau Pérez Fabregat
5c8a638320 Merge pull request #3055 from HugsDaniel/3051-products-edit-views
[Defacepocalypse] Import products#edit and form partial in our codebase and apply overrides
2018-11-27 17:32:25 +01:00
Pau Pérez Fabregat
869f17256d Merge pull request #3011 from HugsDaniel/3000-api-endpoint-enterprise-fee
Add an API endpoint for EnterpriseFeesController#destroy
2018-11-27 17:28:43 +01:00
Pau Pérez Fabregat
ea6f44e78d Merge pull request #3144 from mkllnk/2841-fix-migration-encoding
Encode records with special chars as well
2018-11-27 17:28:13 +01:00
Pau Pérez Fabregat
04d57f8e6e Merge pull request #3135 from openfoodfoundation/dependabot/bundler/unicorn-rails-2.2.1
Bump unicorn-rails from 1.1.0 to 2.2.1
2018-11-27 17:26:12 +01:00
luisramos0
64d16258cf Fix tests in bulk_product_update spec by:
- setting on_hand in the variant and not in the product directly
- setting variant on_demand to false (default from the factory is on_demand true)
- saving the variant after doing this to trigger appropriate callbacks like creating missing variant stock items
2018-11-27 16:03:52 +00:00
Pau Pérez Fabregat
d073157424 Merge pull request #3134 from coopdevs/update-skylight
Update Skylight from 1.6.1 to 1.7.1
2018-11-27 08:54:39 +01:00
Maikel
1b58c2519a Merge pull request #3138 from luisramos0/2-0-stable-nov-24th
[Spree Upgrade] Merging master into 2-0-stable (third run in Nov2018)
2018-11-27 16:16:32 +11:00
Maikel
296029ef28 Merge pull request #3131 from coopdevs/fix-restart-checkout-spec
[Spree Upgrade] Fix checkout spec due to shipments
2018-11-27 15:16:01 +11:00
Maikel
2967fdccf7 Merge pull request #3142 from kristinalim/fix-rubocop_block_length_ignore_describe_context
Ignore `describe` and `context` in Rubocop BlockLength
2018-11-27 14:54:46 +11:00
Maikel Linke
9efa45663c Encode records with special chars as well
Using Marshal.dump on the French production database raised an error:

    Encoding::UndefinedConversionError: "\xC3" from ASCII-8BIT to UTF-8

Replacing Marshal with YAML solves the problem. It is also more reliable
and human readable.

This code was run against the French, Australian and UK production
data successfully.
2018-11-27 14:34:03 +11:00
Pau Perez
b365488653 Enable rack-mini-profiler in development
This will run it always in development mode.
2018-11-26 12:10:49 +01:00
Kristina Lim
5c6ec50dea Ignore describe and context in Rubocop BlockLength 2018-11-26 13:55:55 +08:00
Maikel
c152da8122 Merge pull request #3126 from mkllnk/2841-convert-guest-customer
2841  Associate customers with their user records
2018-11-26 13:56:31 +11:00
luisramos0
e153510a71 Merge branch 'master' into 2-0-stable-nov-24th 2018-11-24 15:19:38 +00:00
haseleyi
691de9199f Add missing translation for 'Has Shopfront' in single-enterprise dashboard 2018-11-23 11:23:28 -08:00
dependabot[bot]
4499c38cfe Bump unicorn-rails from 1.1.0 to 2.2.1
Bumps [unicorn-rails](https://github.com/samuelkadolph/unicorn-rails) from 1.1.0 to 2.2.1.
- [Release notes](https://github.com/samuelkadolph/unicorn-rails/releases)
- [Commits](https://github.com/samuelkadolph/unicorn-rails/compare/v1.1.0...v2.2.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-23 19:14:51 +00:00
Luis Ramos
94a2972d57 Merge pull request #3133 from HugsDaniel/3029-products-renderer-spec
[Spree Upgrade] Fix ProductsRenderer specs
2018-11-23 18:23:33 +00:00
luisramos0
73ed5eeaac Fix product import spec related to this change, the value provided to on_hand must be an integer 2018-11-23 18:07:51 +00:00
luisramos0
f509fa6c86 Make variantStock.on_demand= save the variant so that it doesn't impact on_hand that is already saving the variant with a lock 2018-11-23 18:07:08 +00:00
luisramos0
ba8aa110c2 Fix VariantStock.overwrite_stock_levels by using stock_item.adjust_count_on_hand. This makes product_controller_decorator.bulk_update work 2018-11-23 18:06:48 +00:00
Maxim Colls
4b588cbfb0 Removed unused toggle helpers in spec/support 2018-11-23 16:47:55 +00:00
Pau Perez
2abb316bcc Update Skylight from 1.6.1 to 1.7.1
This doesn't bring too many improvements but it's the latest version can
work on our Rails 3.2 version.

You can read the changelog at
https://github.com/skylightio/skylight-ruby/blob/master/CHANGELOG.md#170-april-24-2018.
2018-11-23 17:31:53 +01:00
Hugo Daniel
f1dc52fe4e Set variant.on_demand to false 2018-11-23 14:30:14 +01:00
luisramos0
6cdaaa9e7d Add VariantStock.on_demand as attribute_accessible so it can be mass assigned from product_controller_decorator.bulk_update 2018-11-23 12:04:00 +00:00
Pau Pérez Fabregat
0237432ba4 Merge pull request #3125 from luisramos0/2-0-variant-stock-item
[Spree Upgrade] Fix Product model spec and small refactoring in VariantStock
2018-11-23 12:53:52 +01:00
Pau Perez
23421758fa Fix checkout spec due to shipments 2018-11-23 12:28:31 +01:00
Pau Perez
453b2a99de Rename redundant #restart_checkout to #call 2018-11-23 12:05:39 +01:00
Pau Perez
88afa70f37 Simplify and speed up service tests 2018-11-23 12:04:42 +01:00
Pau Perez
2c8a1f5e78 Check for value and not object identity in spec 2018-11-23 12:04:42 +01:00
Pau Perez
99463427ce Refactor RestartCheckout service just extracted 2018-11-23 12:04:42 +01:00
Pau Perez
3b681a59ba Move controller tests to service class tests 2018-11-23 12:04:42 +01:00
Pau Perez
a62a2cb52f Extract #restart_checkout to a service 2018-11-23 12:04:42 +01:00
luisramos0
7257ab30f1 Fix typo in inventory_error_flash_for_insufficient_quantity translation 2018-11-23 08:39:46 +00:00
Maikel Linke
f4d5727fb4 Associate customers with their user records
When we introduced the Customer model, we didn't associate any existing
customers with users that have the same email address.
Later we decided to create that association when users sign up. But we didn't
update all the existing customers. We do that now for data consistency and to
solve several bugs.
2018-11-23 15:38:35 +11:00
luisramos0
d28f47046a Fix product model spec by removing unnecessary on_hand setter and adding required fields for a new product 2018-11-22 20:38:58 +00:00
luisramos0
134b73d730 Improve VariantStock code by extracting stockitems.first to a separate method 2018-11-22 20:38:46 +00:00
Luis Ramos
0052d571b9 Merge pull request #3100 from HugsDaniel/2999-checkout-feature-specs
[Spree Upgrade] Fix checkout feature specs
2018-11-22 16:49:41 +00:00
Hugo Daniel
d7a148bb75 Fix checkout feature specs 2018-11-22 17:01:39 +01:00
Luis Ramos
d060d31051 Merge pull request #3117 from HugsDaniel/3034-api-products-controller-spec
Use :user factory instead of build_stubbed to create the current_api_…
2018-11-22 14:10:05 +00:00
Hugo Daniel
a08ddd8171 Use :user factory instead of build_stubbed to create the current_api_user 2018-11-22 14:29:37 +01:00
Pau Pérez Fabregat
064ec7d270 Merge pull request #3108 from luisramos0/2-0-new-order
[Spree Upgrade] Add missing translation to admin new order creation page
2018-11-22 10:39:06 +01:00
Maikel Linke
95dbfae757 Use expect syntax 2018-11-22 15:42:56 +11:00
Maikel
be7fea9d14 Merge pull request #3003 from kevinchristianson/getting-started-edits
Getting Started edits
2018-11-22 12:51:16 +11:00
haseleyi
07e246db39 Remove outdated time zone precaution from Getting Started wiki 2018-11-21 15:56:14 -08:00
haseleyi
364a00074b Remove Resources header 2018-11-21 15:56:14 -08:00
Kevin Christianson
7dce6e1180 Remove weird red "for" text in Troubleshooting 2018-11-21 15:56:14 -08:00
Kevin Christianson
1216567be9 Add Troubleshooting section with an alternative database setup 2018-11-21 15:56:13 -08:00
Samuel Nozaki
a7032a8822 Clarify that the time zone should be Melbourne 2018-11-21 15:56:13 -08:00
nozakis
6a73ee86f8 Clarify GETTING_STARTED.md in regards to rspec test failures and time zones 2018-11-21 15:56:13 -08:00
haseleyi
d4b49a662f Add translation for 'Back to Payments List' button in new payment form 2018-11-21 15:33:45 -08:00
luisramos0
2abf4e39cb Add missing translation to admin new order creation page 2018-11-21 23:22:43 +00:00
Luis Ramos
391deb94b0 Merge pull request #3102 from luisramos0/2-0-fix-admin-adjusts-spec
[Spree Upgrade] Fix spec/features/admin/adjustments_spec
2018-11-21 22:27:28 +00:00
Matt-Yorkley
b3a9b502fa Add missing translation key 2018-11-21 19:16:08 +00:00
Matt-Yorkley
a5407d780c Include unexpected validation errors 2018-11-21 19:16:07 +00:00
Pau Pérez Fabregat
ac9cfaa8c3 Merge pull request #3093 from mllocs/fix/factories-ignore-warning
Fixed Factory warning while running tests
2018-11-21 14:44:03 +01:00
Pau Pérez Fabregat
6a1776b84a Merge pull request #3053 from HugsDaniel/3050-products-new-views
[Defacepocalypse] Import products#new view into our codebase and apply overrides
2018-11-21 14:43:22 +01:00
luisramos0
24a7494103 Fix admin/adjustments spec by renaming test adjustment from Shipping to Extra Adjustment.
This was causing an error because the order factory now includes a Shipping adjustment
2018-11-21 13:41:16 +00:00
luisramos0
783e0eed3c In admin/users, convert Spree.t calls to t calls using lazy lookup and move translations to ofn's en.yml 2018-11-21 11:46:14 +00:00
luisramos0
0189cefd1c Update all locales with the latest Transifex translations 2018-11-20 22:40:11 +00:00
Maxim Colls
f179bf8c49 Fixed Factory warning while running tests 2018-11-20 18:27:43 +00:00
Pau Pérez Fabregat
398092fa50 Merge pull request #3065 from openfoodfoundation/dependabot/bundler/turbo-sprockets-rails3-0.3.14
Bump turbo-sprockets-rails3 from 0.3.6 to 0.3.14
2018-11-20 12:13:23 +01:00
Pau Pérez Fabregat
4c6dec6203 Merge pull request #3082 from coopdevs/remove-travis-leftovers
Remove all database.travis.yml
2018-11-20 09:35:12 +01:00
Maikel
733a018f37 Merge pull request #3081 from luisramos0/2-0-enterprise-groups
[Spree Upgrade] Fix features/admin/enterprise_groups_spec by replacing select2_search with select2_select
2018-11-20 16:41:05 +11:00
Maikel
b05bfc5cc7 Merge pull request #3075 from luisramos0/2-0-setting-transl
[Spree Upgrade] Fix translation issue in settings spec
2018-11-20 16:39:54 +11:00
Maikel
5e82d38bec Merge pull request #3071 from luisramos0/2-0-xdescribe-proxy-order
[Spree Upgrade] Move ProxyOrder controller to xdescribe
2018-11-20 16:38:42 +11:00
Maikel
6835d24fbf Merge pull request #3004 from luisramos0/2-0-mail-method-fix
[Spree Upgrade] Fix line Item specs with problems related to VariantStock.on_hand=
2018-11-20 16:37:19 +11:00
Luis Ramos
a7bd793ad2 Merge pull request #3074 from luisramos0/2-0-acct-transl
[Spree Upgrade] Fix missing translation in User transaction history
2018-11-20 00:43:24 +00:00
Luis Ramos
e297b19a91 Merge pull request #3069 from luisramos0/2-0-check-missing-translation
[Spree Upgrade] Add missing translation in the checkout confirmation page
2018-11-20 00:39:05 +00:00
Luis Ramos
d984d76e6b Merge pull request #3070 from luisramos0/2-0-order-spec-restart
[Spree Upgrade] Fix order spec restart checkout test and orders controller enterprise with fees test
2018-11-20 00:38:11 +00:00
Pau Perez
9301c5e1d5 Remove all database.travis.yml
We no longer use this file since we started with Semaphore CI.
2018-11-19 17:16:04 +01:00
luisramos0
5f48f2b8a1 Fix enterprise groups spec by replacing select2_search with select2_select for country and state in enterprise group address 2018-11-19 12:44:25 +00:00
Pau Pérez Fabregat
27267926dc Merge pull request #3079 from luisramos0/2-0-order-feature-spec
[Spree Upgrade] Fix 3 tests in shopping/orders_spec
2018-11-19 12:51:07 +01:00
luisramos0
bf32a21155 Allow adapted on_hand attr to be mass assigned in VariantStock.
Without specifying it in `attr_accessible`, `#assign_attributes` won't
work. See details in
https://apidock.com/rails/v3.2.13/ActiveRecord/Persistence/update_attributes
and https://apidock.com/rails/ActiveRecord/Base/assign_attributes.
2018-11-19 10:05:17 +00:00
Maikel
90e8813ff6 Merge pull request #3054 from coopdevs/fix/incorrect-order-dates
Fix/incorrect order dates
2018-11-19 09:17:11 +11:00
luisramos0
9deb249dec Fix order by changing expected results: order is paid.
These tests use order factory order_with_credit_payment with ‘amount: order.total + 10000’ and since spree 2 when order payment state is credit_owned (customer has credit after the order), the order is considered paid 71c6c4f297
2018-11-18 20:58:55 +00:00
luisramos0
a20aba26cd Fix order feature spec by adapting to new spree 2 order factory with 5 line_items by default. Removed currency sign to avoid having problems with it, it's not really part of the spec objective 2018-11-18 16:51:43 +00:00
luisramos0
d29778e2d1 Fix translation issue in spec by refering the correct translation namespace: spree 2018-11-18 16:36:03 +00:00
luisramos0
d282823d3a Fix missing translation in user transaction history 2018-11-18 16:15:35 +00:00
Maxim Colls
884d4d0122 Fixed specs 2018-11-17 19:46:09 +01:00
Maxim Colls
3301b5850a Improved UX in the accordion steps in the checkout page 2018-11-17 18:48:10 +01:00
luisramos0
d1071acfdb Move ProxyOrder controller to xdescribe. It's part of non-core feature subscriptions and will be left for spree upgrade phase 2 2018-11-17 12:23:52 +00:00
luisramos0
b40c0e5b80 Fix order controller spec with enterprise fees by adapting to new order factory with 5 line items by default 2018-11-17 12:11:23 +00:00
luisramos0
ee8d77bc09 Fix order spec restart checkout test by adding a required line_item to the order being tested 2018-11-17 11:57:16 +00:00
luisramos0
1fc11c5658 Add missing translation in the checkout confirmation page 2018-11-16 22:56:41 +00:00
dependabot[bot]
e655e60b56 Bump turbo-sprockets-rails3 from 0.3.6 to 0.3.14
Bumps [turbo-sprockets-rails3](https://github.com/ndbroadbent/turbo-sprockets-rails3) from 0.3.6 to 0.3.14.
- [Release notes](https://github.com/ndbroadbent/turbo-sprockets-rails3/releases)
- [Commits](https://github.com/ndbroadbent/turbo-sprockets-rails3/compare/v0.3.6...v0.3.14)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-16 19:16:27 +00:00
Maikel
f593a70000 Merge pull request #2967 from openfoodfoundation/dependabot/bundler/unicorn-5.4.1
Bump unicorn from 4.9.0 to 5.4.1
2018-11-16 14:05:47 +11:00
dependabot[bot]
0d93705856 Bump unicorn from 4.9.0 to 5.4.1
Bumps [unicorn](https://bogomips.org/unicorn/) from 4.9.0 to 5.4.1.

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-16 02:00:48 +00:00
Maikel
5ecea06098 Merge pull request #3024 from luisramos0/2-0-credit-card-ctrl
[Spree Upgrade] Fix credit card controller
2018-11-16 10:43:16 +11:00
Maikel
5d200b7753 Merge pull request #3026 from luisramos0/2-0-calculator-line-items-for
[Spree Upgrade] Improve failed_checkout_spec by making calculator decorator line_items_for work with new Stock::Package
2018-11-16 10:41:29 +11:00
Luis Ramos
f985e723e8 Merge pull request #3048 from mkllnk/2882-spree2-email-config
[Spree Upgrade] Update test mail setup for Spree 2
2018-11-15 22:25:50 +00:00
Pau Perez
23bda74ecb Match name of filter and db column for consistency 2018-11-15 19:09:17 +01:00
Pau Perez
a4bbe2b696 Query completed_at filtering orders by date range 2018-11-15 19:09:17 +01:00
Pau Perez
c7a1c4b253 Change order date column translation in BOM
This makes it consistent with the order page. In both cases we use the
`completed_at` column underneath.
2018-11-15 19:09:17 +01:00
Hugo Daniel
a50786be34 Remove old do_not_remove_referenced_fees method 2018-11-15 17:59:06 +01:00
Hugo Daniel
0868404e98 Add specs for new Api::EnterpriseFeesController 2018-11-15 17:58:56 +01:00
Hugo Daniel
1309d80f65 Import products#edit and form partial in our codebase and apply overrides 2018-11-15 17:39:36 +01:00
Pau Pérez Fabregat
ee2ace8023 Merge pull request #3022 from HugsDaniel/2756-duplicate-product-with-image
Add specs for cloning a product with image
2018-11-15 17:35:28 +01:00
Hugo Daniel
094d88d03a Import products#new view into our codebase and apply overrides 2018-11-15 16:35:31 +01:00
Hugo Daniel
d060704e86 Change Spree step-6a commit reference in Gemfile 2018-11-15 15:40:44 +01:00
Pau Perez
52e58a1c31 Remove unused @show_only_completed from view
Now there's no difference in behavior. In both cases we sort by
completed_at in the second column of the orders page.
2018-11-15 15:40:13 +01:00
Pau Perez
b7a3255dbe Replace completed_at in orders table w/ created_at 2018-11-15 15:40:13 +01:00
Pau Perez
b1b04b505e Fetch orders sorted by completion date 2018-11-15 15:40:13 +01:00
Pau Perez
e69d297f86 Wrap long and unreadable lines 2018-11-15 14:26:13 +01:00
Hugo Daniel
a162a2c50b Move product distributions check as a before_destroy in EnterpriseFee model 2018-11-15 14:05:15 +01:00
Hugo Daniel
7b33712f7a Add an API endpoint for EnterpriseFeesController#destroy 2018-11-15 14:05:08 +01:00
Hugo Daniel
4e29589be0 Add specs for cloning a product with image 2018-11-15 13:51:40 +01:00
Luis Ramos
1dc5cc6d42 Merge pull request #3040 from luisramos0/2-0-refactor-factories
[Spree Upgrade] Simplify completed_order_with_fees factory and make shipment_with an ofn factory
2018-11-15 11:24:49 +00:00
luisramos0
9ba0fc268e Run transpec and clean up rubocop issues in credit_card_controller and spec 2018-11-15 11:07:43 +00:00
Pau Pérez Fabregat
fb56293748 Merge pull request #3046 from luisramos0/2-0-knapsack-report
[Spree Upgrade] New knapsack report
2018-11-15 09:32:10 +01:00
Maikel
d109f882fc Merge pull request #3038 from luisramos0/2-0-order-factory
[Spree Upgrade] Remove shipping_method_id from order factory
2018-11-15 15:22:31 +11:00
Maikel
a2c9ba60d8 Merge pull request #3035 from luisramos0/2-0-order-ctrl-line-item-delete
[Spree Upgrade] Fix orders controller spec when removing line items from order
2018-11-15 15:20:31 +11:00
Maikel
ebbe02523e Merge pull request #3019 from luisramos0/more-x-spec-reports
[Spree Upgrade] Make broken report specs xdescribe and leave them for spree upgrade pha…
2018-11-15 15:17:04 +11:00
Maikel
2d3f706c05 Merge pull request #3042 from luisramos0/2-0-stable-nov-14th
[Spree Upgrade] Merging master into 2-0-stable (second run in Nov2018)
2018-11-15 15:02:21 +11:00
Maikel Linke
1e312dfa41 Update test mail setup for Spree 2
https://github.com/openfoodfoundation/openfoodnetwork/issues/2882

The email setup differs between Spree 1 and Spree 2. We already
encapsulated that setup in a single method which now needed changing.
2018-11-15 14:30:46 +11:00
Maikel
a25cdd90de Merge pull request #3014 from luisramos0/2-0-payments_spec
[Spree Upgrade] Fix admin payments spec
2018-11-15 13:02:28 +11:00
luisramos0
ece21a674a Simplify completed_order_with_fees factory and make shipment_with factory an ofn factory to avoid creating extra dummy shipping_method in every test 2018-11-14 23:13:05 +00:00
luisramos0
688ec5fb21 Fix rubocop issues in calculator_decorator and calculator/flat_percent_item_total_spec 2018-11-14 23:04:38 +00:00
luisramos0
7c0627a823 Improve failed_checkout_spec by making calculator decorator line_items_for work with new Stock::Package 2018-11-14 23:04:38 +00:00
luisramos0
a5fb3e337d New knapsack report
New knapsack report for 2-0-stable. Makes the 4 jobs with 20 mins each.
2018-11-14 22:58:09 +00:00
Luis Ramos
c19e954113 Merge pull request #3009 from HugsDaniel/authenticate-api-use-through-logged-in-user
[Spree Upgrade] Authenticate API user through logged in user
2018-11-14 14:27:30 +00:00
luisramos0
0a77eeb4b6 Merge branch 'master' into 2-0-stable-nov-14th 2018-11-14 11:35:58 +00:00
luisramos0
19321b6d4f Fix admin payments spec. Add missing payment method to order.distributor 2018-11-14 11:26:26 +00:00
Hugo Daniel
3dd981ca05 Use logged in user (spree_current_user) for API authentication (current_api_user) 2018-11-14 11:58:28 +01:00
Pau Pérez Fabregat
a65e2487c4 Merge pull request #3013 from luisramos0/2-0-api-orders-ctrl-spec
[Spree Upgrade] Fix api/orders_controller_spec
2018-11-14 11:48:34 +01:00
Pau Pérez Fabregat
605f84d30a Merge pull request #3010 from openfoodfoundation/transifex
Transifex
2018-11-14 11:27:01 +01:00
Pau Pérez Fabregat
8ee193dbcf Merge pull request #2984 from Matt-Yorkley/email_https_links2
Specify only email link protocol setting
2018-11-14 11:26:14 +01:00
Pau Pérez Fabregat
e66f406ea6 Merge pull request #2946 from luisramos0/improve_taxons
Sort Product categories alphabetically by name
2018-11-14 11:23:59 +01:00
luisramos0
2947d7a98c Remove shipping_method_id from order factory. This attribute is gone in spree 2 and doesnt need to be the responsibility of the order factory to handle order shipping method. The shipping method is selected only when the order workflow is progressed on checkout 2018-11-13 21:25:59 +00:00
luisramos0
9b894c6a55 Fix orders controller spec when removing line items from order. Improved spec and adapted to the fact that in spree 2 the default number of line items in this factory is 5 2018-11-13 19:51:26 +00:00
luisramos0
a234308a06 Fix credit card controller by adding a rescue for wrong arguments passed in params 2018-11-13 15:28:10 +00:00
luisramos0
2037413df7 Make some report specs xdescribe and leave them for spree upgrade phase 2 2018-11-13 14:53:42 +00:00
luisramos0
ef5d679f90 Fix api/orders_controller_spec by fixing expectations on order attributes: remove old attributes shipments_path and show_path 2018-11-12 16:31:57 +00:00
luisramos0
bbdbfc1374 Fix opi/orders_controller_spec by providing line items with shipment and thus make the order workflow work 2018-11-12 16:29:38 +00:00
Transifex-Openfoodnetwork
f9fae06a7a Updating translations for config/locales/en_BE.yml 2018-11-10 07:09:02 +11:00
Maikel
5c208a68c6 Merge pull request #3007 from openfoodfoundation/revert-2859-instagram_pattern
Revert "Instagram pattern"
2018-11-09 14:23:44 +11:00
Maikel
d8d20429aa Revert "Instagram pattern" 2018-11-09 13:33:11 +11:00
Maikel
57efc36448 Merge pull request #2993 from Matt-Yorkley/user_class
Deal with failing Spree::LegacyUser test
2018-11-09 10:21:31 +11:00
Luis Ramos
0ea0016fc9 Merge pull request #2998 from coopdevs/adapt-product-on-demand
[Spree Upgrade] Adapt product on demand
2018-11-08 19:21:46 +00:00
Luis Ramos
ed7c12bd26 Merge pull request #2997 from luisramos0/2-0-stable-nov-8th
[Spree Upgrade] Merging master into 2-0-stable (first run in Nov2018)
2018-11-08 19:20:42 +00:00
Luis Ramos
4149c95c65 Merge pull request #2991 from Matt-Yorkley/missing_resource_translation
[Spree Upgrade] Import missing translations from Spree 2 to fix some tests
2018-11-08 12:34:53 +00:00
Luis Ramos
30bca40ed0 Merge pull request #2996 from coopdevs/update-products-new-js-template
[Spree Upgrade] Bring Spree changes on admin/products/new.js.erb
2018-11-08 12:13:47 +00:00
Luis Ramos
a3da941d8f Merge pull request #2992 from Matt-Yorkley/credit-cards
[Spree Upgrade] Failing credit card spec
2018-11-08 12:12:34 +00:00
Pau Perez
de31823151 Add #on_demand= to make product creation page work
We're bringing in the setter that got removed in Spree 2.0 so that we
can still pass an on_demand value from the product creation form.

However, we won't keep the getter to keep things simple. The frontend
seems to be checking the existence of variants anyway, so then it can
also check for product.master.on_demand and we avoid some logic on the
backend.
2018-11-08 11:41:58 +00:00
luisramos0
fcdb5cd7af Merge branch 'master' into 2-0-stable-nov-8th 2018-11-08 11:18:54 +00:00
Pau Perez
18c51dc596 Bring Spree changes on admin/products/new.js.erb
We copied it from Spree to then append a little change on it. Since the
original version changed in Spree 2.0 we need to update our copy.
2018-11-08 10:45:04 +00:00
Matt-Yorkley
8aa6b2c0ac Stub spree_api_key on Spree::LegacyUser when signing in as regular user 2018-11-08 00:07:24 +00:00
Matt-Yorkley
edbfd64a44 Set the Spree.user_class explicitly in spree initializer 2018-11-08 00:04:04 +00:00
Matt-Yorkley
fae0617639 Merge pull request #2986 from HugsDaniel/2985-api-product-images-specs
[Spree Upgrade] Add an API key for admin user
2018-11-08 00:01:46 +00:00
Matt-Yorkley
3f33e28839 Fix outdated credit card spec 2018-11-07 20:48:54 +00:00
Matt-Yorkley
cfc31f1fbd Import missing translations from Spree 2 to fix some tests 2018-11-07 19:23:28 +00:00
Pau Pérez Fabregat
51a94c8194 Merge pull request #2964 from openfoodfoundation/dependabot/bundler/awesome_print-1.8.0
Bump awesome_print from 1.0.2 to 1.8.0
2018-11-07 18:48:32 +00:00
Matt-Yorkley
9011f5d9a2 Rescue ArgumentError and give user feedback 2018-11-07 18:48:08 +00:00
Pau Pérez Fabregat
72a9d39ee1 Merge pull request #2932 from luisramos0/2931-weight-calculator
2931 Refactor and prepare weight calculator for spree 2
2018-11-07 18:40:38 +00:00
Pau Pérez Fabregat
ecc69c2c58 Merge pull request #2948 from pfac/pfac-config-time-zone
Fix default time zone config
2018-11-07 18:39:25 +00:00
Matt-Yorkley
b5c6ecb45a Explicitly use UTF-8 encoding when opening spreadsheet files 2018-11-07 16:50:24 +00:00
Hugo Daniel
bc9af7c45f Add an API key for admin user 2018-11-07 16:47:35 +01:00
Matt-Yorkley
5b16353938 Specify only link protocol setting 2018-11-07 11:22:24 +00:00
luisramos0
b7ffde795a Add migration to update calculator class name of weight calculators 2018-11-07 09:54:53 +00:00
luisramos0
9490da329a Move Calculator::Weight from models/open_food_network/calculator to models/calculator 2018-11-07 09:54:30 +00:00
luisramos0
bf55f50a7e Fix rubocop warnings on weight and weight_spec 2018-11-07 09:54:30 +00:00
luisramos0
275a192270 Convert specs to RSpec 3.7.1 syntax with Transpec
This conversion is done by Transpec 3.3.0 with the following command:
    transpec spec/models/calculator/weight_spec.rb

* 3 conversions
    from: == expected
      to: eq(expected)

* 3 conversions
    from: obj.should
      to: expect(obj).to

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2018-11-07 09:54:30 +00:00
luisramos0
1ef04354fd Add capacity to weight calculator to calculate based on any object with an order (needed in spree 2 to calculate based on package) 2018-11-07 09:54:30 +00:00
Pau Pérez Fabregat
8547d5302c Merge pull request #2978 from Matt-Yorkley/spree-upgrade/orders#show
[Spree Upgrade] orders#show
2018-11-06 16:20:47 +00:00
Luis Ramos
0c02e8c15f Merge pull request #2981 from coopdevs/remove-commented-out-code
Remove old commented out code
2018-11-06 16:06:59 +00:00
Luis Ramos
1ceb632b83 Merge pull request #2980 from coopdevs/fix-long-line
Fix long line
2018-11-06 16:05:22 +00:00
Pau Pérez Fabregat
a4139a14a8 Merge pull request #2977 from luisramos0/2-0-payment-translation
[Spree Upgrade] Add missing failed authorization translation
2018-11-06 16:01:00 +00:00
Luis Ramos
86721d6d42 Merge pull request #2974 from luisramos0/2-0-user-balance
[Spree Upgrade] Fix User Balance Calculator spec
2018-11-06 16:00:44 +00:00
Pau Perez
71702af3c3 Have a single attributes list in serializer 2018-11-06 15:52:02 +00:00
Pau Perez
51155bb368 Remove old commented out code
You know, git already keeps old code for us.
2018-11-06 14:23:15 +00:00
Pau Perez
26d95b7250 Fix long lines 2018-11-06 13:59:51 +00:00
Matt-Yorkley
d0b7b57017 Remove OrderSerializer#show_path and adjust to use #edit over #show 2018-11-06 11:07:14 +00:00
Matt-Yorkley
aaaec4777d Remove admin order #show link from helper 2018-11-06 11:03:06 +00:00
luisramos0
c191a1feb8 Add missing translation related to authorization failure 2018-11-06 10:20:52 +00:00
luisramos0
79fcc7bce0 Fix user balance calculator spec by setting a target_shipment on line item of the order being tested 2018-11-05 19:23:09 +00:00
Pau Pérez Fabregat
4155f086e0 Merge pull request #2968 from openfoodfoundation/transifex
Transifex
2018-11-05 19:40:33 +01:00
Pau Pérez Fabregat
6bc14f4bab Merge pull request #2970 from Matt-Yorkley/2939-edit-order-button
Remove workaround in failing feature spec
2018-11-05 19:25:00 +01:00
Pau Pérez Fabregat
057412111d Merge pull request #2972 from coopdevs/mark-last-failing-enterprise-spec-pending
[Spree Upgrade] Mark last failing enterprises spec as pending
2018-11-05 18:59:47 +01:00
Pau Pérez Fabregat
e76bf81e2a Merge pull request #2973 from coopdevs/deliver-email-in-spec
[Spree Upgrade] Perform mail delivery in spec to make it pass
2018-11-05 18:58:37 +01:00
Pau Perez
f7b6867c28 Perform mail delivery in spec to make it pass
We need to purposefully enable deliveries for the deliveries array to
list this email. Otherwise the delivery logic is not executed and thus
the deliveries array never filled.
2018-11-05 17:49:08 +00:00
Pau Perez
21d756a1af Mark last failing enterprises spec as pending
This will get solved once we complete
https://github.com/openfoodfoundation/openfoodnetwork/issues/2971. Until
then, let's not focus on this spec to reach our 100% green test suite.
2018-11-05 16:45:53 +00:00
Matt-Yorkley
fd47756e2f Remove workaround in failing feature spec
Removed an old workaround that clicked a button multiple times.
This was no longer working and causing the spec to fail.
2018-11-05 11:19:57 +00:00
Pau Pérez Fabregat
50a06d1bd9 Merge pull request #2969 from luisramos0/2897-2-0-price-fix
[Spree Upgrade] Fix specs creating deleted variants
2018-11-05 11:59:06 +01:00
luisramos0
4f992a18f7 Fix specs creating deleted variants
Spree checks that each price belongs to a variant
Since we were creating deleted variants, the price models couldnt see those
2018-11-05 10:43:10 +00:00
Transifex-Openfoodnetwork
98d79ec939 Updating translations for config/locales/fr_BE.yml 2018-11-05 18:46:40 +11:00
Maikel
4930c9bc06 Merge pull request #2934 from mkllnk/manual-rubocop-todo-config
Add offending files to rubocop config
2018-11-05 10:37:03 +11:00
Maikel Linke
7ad40074a5 Make Code Climate show our real score ans split rubocop config
Our rubocop config hides all current violations. It allows us to have a
passing rubocop run on the current code and improve it gradually. It
detects new violations, but doesn't annoy us with all the existing ones.

Code Climate has its own way of remembering all current violations which
is more sophisticated than ours. The new config for Code Climate doesn't
hide any violations so that Code Climate can give us a realistic score
of code quality and warn us about every new violation.

Splitting the configuration into the main three parts gives a quicker
overview and makes maintaining the parts easier.
2018-11-05 10:19:30 +11:00
Maikel Linke
e798532a2f Add offending files to rubocop config
The file .rubocop_todo.yml is generated automatically and contains a
configuration to make all files pass. For a lot of cops it just lists
the offending files. But for some cops it sets a different metric.

Since we don't want these lax metrics, we override them in our config
file .rubocop.yml. This leads to a lot of offences again. This patch
lists all offending files for each cop to make rubocop pass. We can
improve the code over time and remove items from the list.
2018-11-05 10:11:35 +11:00
Pau Pérez Fabregat
fe8303cb19 Merge pull request #2957 from luisramos0/2-0-paypal-spec
[Spree Upgrade] Fix occurrences of order.shipping_method= by replacing with order.shipments
2018-11-02 15:50:59 +01:00
Pau Pérez Fabregat
834520491c Merge pull request #2900 from luisramos0/raise_error_if_no_stock_item_available
[Spree Upgrade] Avoiding variantStock raise by creating variant first and then setting `count_on_hand`
2018-11-02 15:49:21 +01:00
Pau Pérez Fabregat
e635cfc9c1 Merge pull request #2901 from luisramos0/variants_including_master
[Spree Upgrade] Adapt product_decorator code to spree 2 with new variants_including_master
2018-11-02 15:48:19 +01:00
Pau Pérez Fabregat
b1f3fa14e5 Merge pull request #2880 from luisramos0/backorders
[Spree Upgrade] Replace allow_backorders with variant.on_demand in the cart
2018-11-02 15:47:02 +01:00
Pau Pérez Fabregat
ad743a03ac Merge pull request #2888 from luisramos0/backorders-line-items
[Spree Upgrade] Replace allow_backorders with variant.on_demand in the line_item_decorator
2018-11-02 15:45:25 +01:00
Pau Pérez Fabregat
3b85bbe911 Merge pull request #2923 from mkllnk/2882-extract-email-setup-in-specs
Extract email setup in specs for easy upgrade
2018-11-02 15:40:19 +01:00
Pau Pérez Fabregat
a910fc50f5 Merge pull request #2926 from luisramos0/2-0-stable-oct-25
[Spree Upgrade] Merging master into 2-0-stable (second run in October2018)
2018-11-02 15:37:34 +01:00
Maikel
3259b3ecf1 Merge pull request #2912 from Matt-Yorkley/admin_orders_refactor
Admin orders refactor
2018-11-02 16:57:28 +11:00
Maikel
cbfe1b535d Merge pull request #2871 from openfoodfoundation/dependabot/bundler/figaro-1.1.1
Bump figaro from 0.7.0 to 1.1.1
2018-11-02 12:09:53 +11:00
dependabot[bot]
6416d0e1c3 Bump awesome_print from 1.0.2 to 1.8.0
Bumps [awesome_print](https://github.com/awesome-print/awesome_print) from 1.0.2 to 1.8.0.
- [Release notes](https://github.com/awesome-print/awesome_print/releases)
- [Changelog](https://github.com/awesome-print/awesome_print/blob/master/CHANGELOG.md)
- [Commits](https://github.com/awesome-print/awesome_print/compare/v1.0.2...v1.8.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-11-01 19:15:40 +00:00
Maikel
931c1207da Merge pull request #2813 from openfoodfoundation/dependabot/bundler/haml-4.0.7
Bump haml from 4.0.4 to 4.0.7
2018-11-01 16:52:07 +11:00
Maikel
7c4370be69 Merge pull request #2963 from luisramos0/2960_migration
Fix variant_overrides permissions for overrides that belong to the supplier herself
2018-11-01 11:41:51 +11:00
luisramos0
079d4e0bf5 Fix variant_overrides permissions for overrides that belong to the supplier herself 2018-10-31 11:26:15 +00:00
Pau Pérez Fabregat
1fbeb43c3a Merge pull request #2958 from coopdevs/pull-translations
Update all locales with the latest Transifex translations
2018-10-31 10:52:02 +01:00
Pau Pérez Fabregat
fc6a2d4a53 Merge pull request #2959 from coopdevs/fix-name-error-on-migrate
Move default_url_options set up to an initializer
2018-10-31 10:51:06 +01:00
Pau Perez
f16897a0b8 Fix DE translations manually
We don't want 🇩🇪 to have a broken menu.
2018-10-31 08:39:25 +01:00
Pedro Costa
1ddbc24a8b Fix default time zone config
Why:

* Starting the environment, even with just `bundle exec rake`, results
  in the following error:
  ```sh
  Value assigned to config.time_zone not recognized.Run "rake -D time"
  for a list of tasks for finding appropriate time zone names.
  ```

This change addresses the issue by:

* Adding the time zone setting to environment specific configurations,
  defaulting to UTC in development, and using Melbourne in tests.
2018-10-30 23:50:23 +00:00
Pau Perez
2e2c7c56cb Move default_url_options set up to an initializer
For some reason running `bundle exec rake db:migrate RAILS_ENV=staging`
fails with:

```
rake aborted!
NameError: uninitialized constant Spree::Config
```

Running `bundle exec rails server` for instance, does not. There must be
a difference on the way a rake task and the rails commands load the app.

Moving this configuration to an initializer, at the end of the
initialization process, fixes it. The constant `Spree::Config` is
already loaded.

**This is preventing the release v1.22.0 from being staged and tested**
2018-10-30 19:45:04 +01:00
luisramos0
3d106d749b Fix rubocop warnings on load_sample_data task 2018-10-30 18:00:52 +00:00
luisramos0
82befd945b Sort Product categories alphabetically by name and fixsample data by fixing taxons taxonomy id 2018-10-30 18:00:48 +00:00
Pau Pérez Fabregat
e4b988c9a2 Merge pull request #2924 from kristinalim/fix-disable_hiding_of_offcanvas_upon_resize
Disable hiding of hamburger menu upon resize <= 1024px width
2018-10-30 19:00:14 +01:00
Pau Pérez Fabregat
b35b24d4ae Merge pull request #2914 from luisramos0/checkout-language-bug
Fix multi lingual issue in cart and checkout: the user language selection was not being used
2018-10-30 17:46:37 +01:00
Pau Pérez Fabregat
7ffa3a2ca1 Merge pull request #2913 from HugsDaniel/2905_password_reset_missing_translations
Add password confirmation, token and expired keys
2018-10-30 17:34:01 +01:00
Pau Pérez Fabregat
3d88199257 Merge pull request #2896 from Matt-Yorkley/email_https_links
Use https on all links in emails in production
2018-10-30 17:33:32 +01:00
Pau Pérez Fabregat
8e602d453b Merge pull request #2876 from luisramos0/subs-states-fix
Fix bug in subscriptions address controller where country states were not correctly returned
2018-10-30 17:32:34 +01:00
Pau Perez
7f177598f2 Update all locales with the latest Transifex translations 2018-10-30 15:13:57 +01:00
luisramos0
8a034a1538 Fix occurrences of order.shipping_method= by replacing with order.shipments= 2018-10-30 13:37:45 +00:00
Maikel
d63670d675 Merge pull request #2846 from Matt-Yorkley/pi/rename_enterprise_fields
[Product Import] Rename enterprise fields and update template
2018-10-30 15:11:02 +11:00
Maikel
7609496df3 Merge pull request #2859 from albarnaz/instagram_pattern
Instagram pattern
2018-10-30 15:10:27 +11:00
Maikel
ee042f51a4 Merge pull request #2949 from pfac/pfac-fix-new-preferences-migration
Fix new preferences migration
2018-10-30 15:09:35 +11:00
Luis Ramos
4422cdc691 Merge pull request #2936 from luisramos0/2933-2-0-orders-admin
[Spree Upgrade] Fix some tests in orders admin spec
2018-10-29 23:17:48 +00:00
Pau Pérez Fabregat
5fade045f8 Merge pull request #2928 from luisramos0/line_items_controller_spec
Reorganize LineItemsController's destroy line item specs
2018-10-29 16:09:20 +01:00
Pedro Costa
91e4f99c19 Fix new preferences migration
Why:

* In a clean environment, running the new preferences migration fails,
  due to a missing file from Spree core being manually required. This
  file has now been missing since ab707cf.

This change addresses the issue by:

* Copying the missing file from Spree Core 1.3.6.beta into the migration.
  This fixes the issue for now, but also means that a migration merge
  and/or rewrite might be in order for the future.
2018-10-29 14:53:01 +00:00
Matt-Yorkley
443515dae4 Improve comment in index action 2018-10-29 10:34:05 +00:00
luisramos0
b16ed86b2d Fix shipping_method basic test. Adapt to spree 2 that needs shipping_categories to be set and sets them on the base factory in a after_create block, the build command was not picking it up 2018-10-27 20:34:25 +01:00
Matt-Yorkley
f3124e5472 Explicitly add :host to actionmailer config 2018-10-26 22:42:47 +01:00
Matt-Yorkley
b826beb0d7 Inline hashes in tests 2018-10-26 21:38:57 +01:00
Matt-Yorkley
29492d61f9 Use #allow syntax 2018-10-26 21:38:57 +01:00
Matt-Yorkley
8c19d1afec Move tests from spree/admin/orders_controller_spec to api/orders_controller_spec and tidy up 2018-10-26 21:38:57 +01:00
Matt-Yorkley
033ae4f570 Add basic SearchOrders service spec 2018-10-26 21:38:57 +01:00
Matt-Yorkley
1f8f7b0495 Add new Api::OrdersController spec 2018-10-26 21:38:57 +01:00
Matt-Yorkley
46b1317159 Update orders resource js spec 2018-10-26 21:38:57 +01:00
Matt-Yorkley
334eebeab1 Move json to API and strip index action 2018-10-26 21:38:57 +01:00
Matt-Yorkley
0bd67bd06a Remove unnecessary Spree::Config fallback value 2018-10-26 21:38:57 +01:00
Matt-Yorkley
77251848ee Refactor Spree::Admin::OrdersController 2018-10-26 21:38:57 +01:00
luisramos0
4450380cb0 Add missing translation to filter on orders admin page 2018-10-26 21:32:16 +01:00
luisramos0
a5d4c50dea Fix some specs in admin orders. Fixed path to order edit page and some html class identifiers that were changed in spree 2. Subtotal line is gone in spree 2, removed test. 2018-10-26 21:32:16 +01:00
luisramos0
09f8df6340 Reorganize LineItemsController's destroy line item specs to separate contexts with different test orders (completed_with_total and completed_with_fees) 2018-10-25 18:06:48 +01:00
Pau Pérez Fabregat
8a3f621b42 Merge pull request #2893 from luisramos0/deleted_products_break_inventory
Fix bug in inventory management page
2018-10-25 18:20:42 +02:00
Pau Pérez Fabregat
7cac4637fe Merge pull request #2916 from luisramos0/date-transl-fix
Add Portuguese and German to list of momentJS locales
2018-10-25 18:18:53 +02:00
luisramos0
90d7b7f4a0 Merge branch 'master' into 2-0-stable-oct-25 2018-10-25 14:28:58 +01:00
Kristina Lim
2cc594dc98 Proceed to hide off-canvas when resized to >1024px 2018-10-25 20:36:27 +08:00
Kristina Lim
14eaa49204 Disable hiding the off-canvas upon window resize.
In some browsers for mobile devices, the address bar is automatically
hidden when scrolling down the page. This is not workable if the height
of the contents of the off-canvas exceeds the height of the screen,
because the latter portion of the contents stays hidden to the user.

https://github.com/openfoodfoundation/angular-foundation/blob/0.9.0-20180826174721/src/offcanvas/offcanvas.js
2018-10-25 19:29:19 +08:00
Maikel
acb8ec772e Merge pull request #2922 from mkllnk/update-rubocop-todo
Update rubocop todo list
2018-10-25 14:48:51 +11:00
Maikel
3cab3d1798 Merge pull request #2921 from openfoodfoundation/transifex
Transifex
2018-10-25 14:22:10 +11:00
Maikel Linke
cd5c23993a Update rubocop todo list
Since we activated more cops in 0ac16ce096
we had a lot of files missing in the todo list. They are likely from
other pull requests that have been open at the same time. This is a
quick update so that rubocop gives us some useful feedback again.
2018-10-25 14:08:04 +11:00
Maikel Linke
e6adb8a3b9 Extract email setup in specs for easy upgrade
The way we set up email sending completely changes with Spree 2. This
change encapsulates that code in a single method so that it can be
changed easily and doesn't create further merge conflicts while we are
still working on the master branch and the Spree upgrade.
2018-10-25 13:53:22 +11:00
Maikel
51a1787881 Merge pull request #2908 from Matt-Yorkley/bulk_orders_bug
Fix pagination conflict with LineItemsCtrl requests
2018-10-25 13:18:11 +11:00
Maikel Linke
dc5302ca08 Speed up database queries and make them scale
This commit makes use of three ActiveRecord features:

1. Using `select` instead of `all.map` enables ActiveRecord to nest one
select into the other, resulting in one more efficient query instead of
two.

2. Using `find_each` saves memory by loading records in batches.
https://api.rubyonrails.org/classes/ActiveRecord/Batches.html#method-i-find_each

3. Using `pluck` creates only an array, avoiding loading all the other
columns of the records into objects.

Running this on the current Canadian database, fixes the following
variant overrides:

```
[]
[]
[]
[]
[]
[]
[925, 924, 966, 965]
[]
[]
[]
[]
[462,
 863,
 464,
 822,
 949,
 947,
 944,
 939,
 942,
 946,
 945,
 943,
 438,
 937,
 938,
 941,
 940,
 467,
 952,
 875,
 453,
 953,
 454,
 951,
 487,
 460,
 457,
 528,
 527,
 486,
 459,
 458,
 461,
 529,
 530,
 950,
 642,
 384,
 380,
 643,
 385,
 381,
 644,
 386,
 382,
 960,
 959,
 379,
 640,
 377,
 375,
 532,
 639,
 376,
 374,
 646,
 390,
 389,
 637,
 406,
 408,
 647,
 391,
 393,
 633,
 396,
 400,
 398,
 645,
 388,
 387,
 648,
 394,
 392,
 536,
 632,
 399,
 397,
 395,
 634,
 403,
 401,
 635,
 404,
 402,
 636,
 407,
 405,
 535,
 534,
 638,
 410,
 409,
 948,
 533,
 537,
 531,
 877,
 880,
 894,
 893,
 672,
 671,
 673,
 674,
 703,
 714,
 715,
 716,
 717,
 862,
 864,
 879,
 876,
 865,
 881,
 878,
 463,
 954,
 866,
 823,
 957,
 958,
 955,
 956,
 899,
 897]
[]
[969]
```
2018-10-25 11:33:14 +11:00
Transifex-Openfoodnetwork
c17939631f Updating translations for config/locales/en_US.yml 2018-10-25 09:31:36 +11:00
Pau Pérez Fabregat
ce93c52dfe Merge pull request #2850 from Matt-Yorkley/password_change_logout
Password change logout
2018-10-24 11:43:09 +02:00
Pau Pérez Fabregat
9ef4852bd4 Merge pull request #2818 from nikobozi/refactor-variant-overrides-query
Move query from variant_overrides_controller to its model scope
2018-10-24 11:42:22 +02:00
Pau Pérez Fabregat
7651ee0909 Merge pull request #2798 from as1729/as1729-update-docs-Stripe-publishable_key-for-pr
Better docs for Stripe.publishable_key and Stripe.endpoint_secret.
2018-10-24 11:23:21 +02:00
Pau Pérez Fabregat
f32e4dddb1 Merge pull request #2902 from luisramos0/more-pending-tests
[Spree Upgrade] Mark specs from secondary features as xfeature
2018-10-23 19:00:49 +02:00
Pau Pérez Fabregat
9a06c1ef98 Merge pull request #2899 from luisramos0/2898-2-0-fix-orders-admin
[Spree Upgrade] Fix orders admin page by removing a filter that is gone in spree 2
2018-10-23 18:59:01 +02:00
Pau Pérez Fabregat
235d42024a Merge pull request #2903 from luisramos0/2884-2-0-order-ships-path
[Spree Upgrade] In order list page, the shipment state is now a label, not a link. The shipments page is gone in spree 2.
2018-10-23 18:57:05 +02:00
luisramos0
c9784a5eda Add Portuguese and German to list of moment locales. The main usage is in the order cycle closure time in the shopfront 2018-10-23 17:53:08 +01:00
luisramos0
034d9ef72a Refactor multilingual spec: extract method with repeated assertion 2018-10-23 14:10:52 +01:00
luisramos0
9d9f5d38d7 Fix multi lingual issue in cart and checkout: the user language selection was not being used 2018-10-23 14:10:48 +01:00
Hugo Daniel
c5f6af95c7 Add password confirmation, token and expired keys 2018-10-23 10:40:20 +02:00
Maikel
6f5289c730 Merge pull request #2894 from openfoodfoundation/transifex
Transifex
2018-10-23 16:21:20 +11:00
Luis Ramos
a9b390d0aa Merge pull request #2761 from HugsDaniel/2744_fix_feature_specs
[Spree Upgrade] Fix feature specs for shipping_methods
2018-10-22 23:12:20 +01:00
Matt-Yorkley
42c1584e6f Fix pagination conflict with LineItemsCtrl requests 2018-10-22 18:13:56 +01:00
Pau Pérez Fabregat
a1bbf5328e Merge pull request #2872 from mkllnk/2765-fix-geocoding
2765 Fix geocoding to display enterprises on map
2018-10-22 16:44:30 +02:00
luisramos0
d0d9038308 Removed order.shipments_path from order serializer. In order list page the shipment state is now a label, not a link. The shipmeents page is gone in spree 2 2018-10-22 11:24:01 +01:00
luisramos0
34d1e6ffdb Remove pending from bulk_product_update_spec because it's a core spec and should not be left for later in the upgrade process. This reverts PR#2794 2018-10-21 22:13:15 +01:00
luisramos0
7ae5a615b2 Move all specs in update_account_invoices_spec and finalize_account_invoices_spec.rb temporarily to pending 2018-10-21 22:09:21 +01:00
luisramos0
6f78f3c595 Move all specs in proxy_order_spec temporarily to pending 2018-10-21 22:08:10 +01:00
luisramos0
b0ffb0f91a Move all specs in subscription_confirm_job_spec temporarily to pending 2018-10-21 22:07:23 +01:00
luisramos0
2e64226d29 Move all specs in spec/features/admin/subscriptions_spec temporarily to pending 2018-10-21 22:06:31 +01:00
luisramos0
ca786249a6 Move all specs in subscription_form_spec temporarily to pending 2018-10-21 22:05:45 +01:00
luisramos0
3afc59c864 Move all specs in products_reset_strategy_spec (part of product import feature) temporarily to pending 2018-10-21 22:04:16 +01:00
luisramos0
5b6b0f408f Move all specs in product_importer_spec temporarily to pending. There were 11 temporarily pending tests but more were failing 2018-10-21 22:02:34 +01:00
luisramos0
5d36450de2 Move all specs in reports_spec temporarily to pending. There were 6 temporarily pending tests but 3 more were failing 2018-10-21 21:56:55 +01:00
luisramos0
92c7db2249 Adapt product_decorator code to spree 2 where variants_including_master now makes use of Paranoi gem 2018-10-20 23:43:33 +01:00
luisramos0
f3ef3d0c3e Avoiding variantStock raise by creating variant first and then setting count_on_hand 2018-10-20 23:28:22 +01:00
luisramos0
653c67971f Remove order admin page filter 'show only unfulfilled orders' as done on spree 2 2018-10-20 15:11:47 +01:00
luisramos0
d375bb8c55 Migration: Revoke variant overrides without permissions 2018-10-20 12:32:55 +01:00
luisramos0
9079437284 Add before_destroy to enterprise_relationship so that variant overrides are revoked when permission is deleted 2018-10-20 12:32:51 +01:00
luisramos0
5ae0ad87a7 Refactor EnterpriseRelationship before save hook: some renames and extract methods 2018-10-20 11:52:11 +01:00
Matt-Yorkley
c3cef699ca Use https on all links in emails in production 2018-10-19 17:03:51 +01:00
Transifex-Openfoodnetwork
c911462737 Updating translations for config/locales/en_GB.yml 2018-10-20 02:04:33 +11:00
luisramos0
c373d5ab33 Replace usage of global allow_backorders with variant.on_demand in line item sufficient stock method 2018-10-18 19:44:38 +01:00
luisramos0
df36e0b344 In cart population, replace usage of global allow_backorders with variant.on_demand adapter 2018-10-18 18:37:09 +01:00
Pau Pérez Fabregat
32632addfb Merge pull request #2823 from luisramos0/2-0-order-spec-fees
[Spree Upgrade] Fix fees tests in models/spree/order_spec
2018-10-18 13:30:15 +02:00
luisramos0
a92e8c9923 Improve readability of shipment decorator 2018-10-18 10:54:21 +01:00
luisramos0
a83af367b4 Fix order_spec related to retrieving previously ordered items
In spree 2, each completed_order_with_totals comes with 5 line items (see order_factory in spree), so instead of 1+1+1=3 the calculation becomes 5+5+1=11
2018-10-18 10:54:21 +01:00
luisramos0
74eff8730b Fix tests of fees in a completed order in models/spree/order_spec by:
- set distributor with taxes on the order
- simplify the factory completed_order_with_fees by replacing shipment with shipping_method and ship_address and letting the order workflow handle shipments and inventory units
2018-10-18 10:54:21 +01:00
luisramos0
91f52d80c8 Fix problem in order and adjustment model specs by fixing the order.adjustment association
This fix was taken from spree 2.1  here 3fa44165c7
2018-10-18 10:53:00 +01:00
luisramos0
2ccbb87adc Fix payment decorator bug
Payment line items must come from the order, payment does not have inventory_units
2018-10-18 10:53:00 +01:00
Maikel
3a2e52cc98 Merge pull request #2780 from luisramos0/2-0-stripe-factory
[Spree Upgrade] Fix Stripe connect factory
2018-10-18 14:54:28 +11:00
Maikel
01c21c302c Merge pull request #2811 from luisramos0/2-0-adjust-basic-spec-fix
[Spree Upgrade] Fixes shipping tests in adjustment spec
2018-10-18 14:49:28 +11:00
Maikel Linke
9698fd3c5a Style spec 2018-10-18 11:07:16 +11:00
Maikel Linke
d197c8587f Test address deletion 2018-10-18 11:06:32 +11:00
Maikel Linke
e96cab957a Convert specs to RSpec 3.7.1 syntax with Transpec
This conversion is done by Transpec 3.3.0 with the following command:
    transpec spec/models/spree/addresses_spec.rb

* 13 conversions
    from: obj.should
      to: expect(obj).to

* 2 conversions
    from: it { should ... }
      to: it { is_expected.to ... }

* 1 conversion
    from: obj.should_not
      to: expect(obj).not_to

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2018-10-18 10:52:46 +11:00
luisramos0
fe9f4a1c95 Move countryStates service from ofn.admin to admin.utils to remove bad dependency from admin modules (customers and subscriptions) to main ofn.admin module. Now the dependency admin.utils is used instead 2018-10-17 12:16:33 +01:00
luisramos0
c281927372 Fix subscription address form. It now clears the state selection when a different country is selected 2018-10-16 23:02:26 +01:00
luisramos0
1804bf5a2b Extract countryStates logic from customer_address modal and re-use new CountryStates service 2018-10-16 22:45:38 +01:00
luisramos0
5c5a2194d6 Extract country states logic out of subscriptions address controller into new service CountryStates 2018-10-16 21:58:27 +01:00
luisramos0
feaf16d878 Fix bug in subscriptions address controller where the country id lookup was not exact and states returned were incorrect. Add unit tests to cover different cases 2018-10-16 20:59:34 +01:00
luisramos0
98161daa90 Refactor duplicated distributors association in payment_method and gateway to a concern 2018-10-16 20:27:22 +01:00
fabricio.albarnaz
419493f153 Move instagram regex to an method to fix codeclimate 2018-10-16 16:09:15 -03:00
fabricio.albarnaz
8e4adbd23a Add more test cases 2018-10-16 15:34:46 -03:00
fabricio.albarnaz
93a051bf5a Regex ajust 2018-10-16 15:33:10 -03:00
Pau Pérez Fabregat
601e0b927a Merge pull request #2816 from luisramos0/2-0-adjust-enterprise-fees-spec-fix-aplicator
[Spree Upgrade] Fix enterprise fees specs in adjustment_spec - enterprise_fee_aplicator
2018-10-16 19:47:10 +02:00
Pau Pérez Fabregat
54f0ccab93 Merge pull request #2861 from luisramos0/2-0-stable-spree-revision
[Spree Upgrade] Update spree 2-0-4-stable revision used to pick up latest commits
2018-10-16 19:41:08 +02:00
Luis Ramos
3e4f92fe92 Merge branch '2-0-stable' into 2-0-adjust-basic-spec-fix 2018-10-16 17:33:33 +01:00
Pau Pérez Fabregat
c99fec44da Merge pull request #2824 from luisramos0/2-0-order-spec
[Spree Upgrade] Fix taxes tests in models/spree/order_spec
2018-10-16 18:09:33 +02:00
Pau Pérez Fabregat
f2fe3c8cff Merge pull request #2812 from luisramos0/2-0-adjust-enterprise-fees-spec-fix
[Spree Upgrade] Fix enterprise fees specs in adjustment_spec - tax_rate
2018-10-16 18:02:21 +02:00
luisramos0
b3c56e6823 Duplicated payment method distributors association to gateway. This fixes the inheritance problem found in stripe gateway
See PR 2780 for more details
2018-10-16 16:55:18 +01:00
Pau Pérez Fabregat
db9669b4ce Merge pull request #2817 from coopdevs/remove-reference-to-on-demand
[Spree Upgrade] Remove on_demand from Product serializers
2018-10-16 17:52:42 +02:00
Luis Ramos
faf8322c59 Merge pull request #2785 from luisramos0/2-0-order-updater-fix
[Spree Upgrade] Fix order_updater_spec by using create (instead of build) in shipment
2018-10-16 16:43:42 +01:00
luisramos0
570016463b Fix order_updater_spec by using create (instead of build) in shipment. Also simplified spec by using prebuild shipment_with and shipping_method factories 2018-10-16 16:37:36 +01:00
Pau Pérez Fabregat
afe1d7caef Merge pull request #2863 from luisramos0/2-0-stable-oct
[Spree Upgrade] Merging master into 2-0-stable (one month of commits in master)
2018-10-16 17:09:56 +02:00
Pau Pérez Fabregat
590091c42a Merge pull request #2842 from Matt-Yorkley/pi/missing_variable
Fix missing local variable in EntryProcessor
2018-10-16 13:19:23 +02:00
Maikel Linke
8fb81bb6a7 Configure Geocoder with API key as required by Google 2018-10-16 16:49:52 +11:00
Maikel Linke
61797fff56 Restrict deletion of address explicitely
Enterprises have an `address_id` which must point to a valid
`Spree::Address`. As Rubocop suggested, I restricted the deletion of
addresses when they are still associated to an enterprise.

Without declaring `dependent: :restrict`, trying to delete the address
would raise `ActiveRecord::InvalidForeignKey`. Now it is more specific
and raises `ActiveRecord::DeleteRestrictionError`.

I didn't find code rescuing the InvalidForeignKey when deleting addresses. I
actually think that we never delete addresses. So this change should not
have any impact on the execution.
2018-10-16 15:18:44 +11:00
Maikel Linke
a8705ca179 Simplify address methods 2018-10-16 14:49:36 +11:00
Maikel Linke
5021ed9c69 Simplify by using Rails tools 2018-10-16 14:49:35 +11:00
Maikel Linke
34849c441a Reduce complexity and duplication 2018-10-16 14:48:12 +11:00
Maikel Linke
c4437a6437 Style address decorator 2018-10-16 14:48:12 +11:00
Maikel Linke
b109f6d78c Remove temporary reporting code 2018-10-16 14:48:12 +11:00
fabricio.albarnaz
02bc134c59 Change befor save check to format validation 2018-10-15 17:51:33 -03:00
dependabot[bot]
dc6c8ec455 Bump figaro from 0.7.0 to 1.1.1
Bumps [figaro](https://github.com/laserlemon/figaro) from 0.7.0 to 1.1.1.
- [Release notes](https://github.com/laserlemon/figaro/releases)
- [Changelog](https://github.com/laserlemon/figaro/blob/master/CHANGELOG.md)
- [Commits](https://github.com/laserlemon/figaro/compare/v0.7.0...v1.1.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-10-15 19:14:26 +00:00
luisramos0
87cd73ddba Merge branch 'master' into 2-0-stable-oct 2018-10-15 17:09:26 +01:00
Pau Pérez Fabregat
f8bccda6ab Merge pull request #2847 from Matt-Yorkley/emails/validation
Emails/validation
2018-10-15 15:54:41 +02:00
Pau Perez
a5a2cb8ea7 Revert "Merge pull request #2856 from luisramos0/2-0-adjust-clean-up"
This reverts commit fa689b6607, reversing
changes made to 2aeed9763c.
2018-10-15 15:48:48 +02:00
Pau Pérez Fabregat
8946fe3ce8 Merge pull request #2829 from Matt-Yorkley/bi/results_per_page
Add per_page controls to admin orders index
2018-10-15 12:17:39 +02:00
Pau Pérez Fabregat
0e4a3dbc26 Merge pull request #2845 from coopdevs/fix-invalid-variant-creation
Fix invalid variant creation
2018-10-15 12:16:39 +02:00
Pau Pérez Fabregat
fa689b6607 Merge pull request #2856 from luisramos0/2-0-adjust-clean-up
[Spree Upgrade] Running Transpec and Rubocop in "new" models/spree/adjustment_spec
2018-10-15 11:13:46 +02:00
Pau Pérez Fabregat
fe149967e4 Merge pull request #2521 from luisramos0/cookies_in_engine
[OFN Domains] Breaking OFN into domains - POC cookies inside an engine
2018-10-15 10:03:30 +02:00
luisramos0
f133524a9c Remove useless comment from spec factories 2018-10-12 23:09:36 +01:00
luisramos0
4380ff7bd7 Drop calculated_adjustments_decorator. This file was introduced in ofn's a0b740f52d. The change is already in spree 2.0.4, see here 2c82aab566 (diff-00aa4190da81ca29804a406252f1d0f4) 2018-10-12 23:09:36 +01:00
luisramos0
a5522b90f6 Fix Shipment adjustments specs on adjustment_spec by setting Config values before test objects are created 2018-10-12 23:09:35 +01:00
luisramos0
bd31348b94 Improve docs and readability on tax_rate_decorator 2018-10-12 23:09:35 +01:00
luisramos0
5693f44f5e Fix shipping adjustment basic test in adjustment_spec by removing extra shipping_method from test shipment 2018-10-12 23:09:35 +01:00
Matt-Yorkley
fcff835922 Update results on dropdown select 2018-10-12 17:06:42 +01:00
Matt-Yorkley
a2828ea305 Use :for_hubs scope 2018-10-12 17:00:19 +01:00
Matt-Yorkley
123d1963ad Remove duplicate method 2018-10-12 17:00:19 +01:00
Matt-Yorkley
3cb43121d5 Refactor long lines for new character limit 2018-10-12 17:00:18 +01:00
Matt-Yorkley
8fcaa54de7 Update CSV templates 2018-10-12 16:57:13 +01:00
Matt-Yorkley
bd4f0507ce Adjustments for new Settings and ResetAbsent classes 2018-10-12 16:57:13 +01:00
Matt-Yorkley
1c85de6f58 Use producer and distributor for field names 2018-10-12 16:57:13 +01:00
Matt-Yorkley
2c9dc8899a Update fields in specs 2018-10-12 16:57:13 +01:00
Matt-Yorkley
5c2b5377bc Assign supplier_id when saving new product to products list 2018-10-12 16:57:13 +01:00
Matt-Yorkley
e7a909e828 Rename supplier to enterprise 2018-10-12 16:57:13 +01:00
Matt-Yorkley
8a0a33deec Merge pull request #2858 from Matt-Yorkley/rubocop_line_limit
Increase rubocop line limit to 100
2018-10-12 16:52:37 +01:00
luisramos0
1b6f7485b8 Update spree 2-0-4-stable revision used to pick up latest commits 2018-10-12 12:05:18 +01:00
luisramos0
3b6d29968d Fix spree/models/adjustment_spec rubocop issues 2018-10-11 23:02:17 +01:00
luisramos0
6aa8978fe9 Convert specs to RSpec 3.7.1 syntax with Transpec
This conversion is done by Transpec 3.3.0 with the following command:
    transpec spec/models/spree/adjustment_spec.rb

* 30 conversions
    from: obj.should
      to: expect(obj).to

* 25 conversions
    from: == expected
      to: eq(expected)

* 3 conversions
    from: obj.should_not
      to: expect(obj).not_to

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2018-10-11 23:02:17 +01:00
luisramos0
23ed4f705c Fix Enterprise Fee tax category inheritance spec by ensuring the line item is assigned to the order when the order is created. That way the tax category from product is correctly copied to the line item 2018-10-11 23:02:17 +01:00
luisramos0
b7416e42f4 Adapt tax_rate_decorator to new spree version. Spree's default tax calculator now is checking line_items tax category, not the product tax category. See Spree's change here: a0a4b91f13 (diff-46e557ca8717d6ab5039470a40d00ea8) 2018-10-11 23:02:17 +01:00
luisramos0
8b0726b815 Fix enterprise fee calculation. The adjustment.source value of the fee is now allowing the inheritance of the tax category from line items 2018-10-11 23:02:17 +01:00
luisramos0
8aee0f9438 Reorganize code in EnterpriseFeeApplicator 2018-10-11 23:02:17 +01:00
fabricio.albarnaz
6ad32fb66d Add check for instagram.com 2018-10-11 18:05:18 -03:00
fabricio.albarnaz
e46b3566c3 Remove the check for www.instagram.com 2018-10-11 16:51:43 -03:00
fabricio.albarnaz
48720c835c Add spec to instagram pattern 2018-10-11 16:30:17 -03:00
fabricio.albarnaz
e87075aed7 Add before save to check the instagram link pattern 2018-10-11 15:27:46 -03:00
luisramos0
ed429dd20d Fix models/spree/order_spec tests related to tax on shipments:
- make Spree::Config be picked up correctly by reordering test object creation
- make sure line item is loaded in the order when the order is created
2018-10-11 18:06:33 +01:00
luisramos0
56ff4fe90d Remove useless comment from spec factories 2018-10-11 17:16:58 +01:00
luisramos0
dcf0eefe04 Drop calculated_adjustments_decorator. This file was introduced in ofn's a0b740f52d. The change is already in spree 2.0.4, see here 2c82aab566 (diff-00aa4190da81ca29804a406252f1d0f4) 2018-10-11 17:16:58 +01:00
Matt-Yorkley
57c6530e46 DRY code and use more flexible I18n 2018-10-11 16:38:14 +01:00
Matt-Yorkley
ebb03906cf Increase rubocop line limit to 100 2018-10-11 15:37:38 +01:00
Pau Perez
60d05a941c Fix variants with 'weight' and missing unit_value
This adds a data migration to fix those cases. It defaults to showing
1 unit of the specified weight. That is, if the user chose Kg, it'll
display 1 as unit.

Note that migration logs the process in a log/migrate.log file separate
from the regular Rails log/production.log file.

When you run the migration you'll see something like:

  Fixing variants missing unit_value...

  Processing variant 12...
  Succesfully fixed variant 12

  Done!

This helps auditing the changes applied and debug any possible failure
scenarios. You can delete it once all is ok.
2018-10-11 15:52:40 +02:00
Pau Perez
5bd375d422 Favor early return over dumb else branch 2018-10-11 15:52:40 +02:00
Pau Perez
c8c16f0e8a Use Rails 3.2 validates syntax 2018-10-11 15:52:40 +02:00
Pau Perez
cbac916e66 Validate unit value when updating variant_unit
Variants whose product's variant_unit is weight or volume require
a unit_value.
2018-10-11 15:52:40 +02:00
Pau Perez
a2228d4131 Make ProductSet parseable by humans
Now it's imposible to understand what is really going on. Feels more
like assembler than Ruby.
2018-10-11 15:52:40 +02:00
Pau Perez
575d76e23e Cover variant creation and update with basic tests 2018-10-11 15:52:40 +02:00
Pau Perez
d43726504b Make #update_attributes parseable by humans
As it is this is impossible to follow.
2018-10-11 15:52:40 +02:00
Pau Perez
f54c69cbba Add first test case for ProductSet
This covers creation and update of a product.
2018-10-11 15:52:40 +02:00
Pau Perez
2d60b3180e Wrap and improve comment block readability 2018-10-11 15:52:40 +02:00
Matt-Yorkley
4760ebb80c Use global config 2018-10-11 09:04:37 +01:00
Matt-Yorkley
dafcd0ddc2 Add per_page controls to admin orders index 2018-10-10 18:32:12 +01:00
Pau Pérez Fabregat
1bafa0cb7d Merge pull request #2853 from mkllnk/remove-parallel-tests
Remove parallel tests
2018-10-10 16:01:44 +02:00
luisramos0
39d232daaf Fix Enterprise Fee tax category inheritance spec by ensuring the line item is assigned to the order when the order is created. That way the tax category from product is correctly copied to the line item 2018-10-09 19:50:35 +01:00
Pau Pérez Fabregat
227dd3e399 Merge pull request #2831 from kristinalim/fix-product_import_date_error
Fix product import date error when some but not all variants have import date
2018-10-09 16:37:25 +02:00
Pau Pérez Fabregat
85962158b8 Merge pull request #2821 from nikobozi/oc-clear-filter
Make 'Clear All' button work on order cycle page
2018-10-09 16:35:57 +02:00
Matt-Yorkley
900c65e0fc Merge pull request #2855 from openfoodfoundation/transifex
Transifex
2018-10-09 14:21:14 +01:00
Matt-Yorkley
edca209f67 Merge pull request #2844 from Matt-Yorkley/bi/angular_orders_changing_page
Fix bindings on angular orders data
2018-10-09 14:15:38 +01:00
Transifex-Openfoodnetwork
c2c492cd6b Updating translations for config/locales/es.yml 2018-10-09 21:57:06 +11:00
Matt-Yorkley
55411af3fa Improve user account spec 2018-10-09 10:07:41 +01:00
Maikel Linke
245d900b58 Remove unused CI scripts
We used to have our own CI server, but now we are using Travis and
Semaphore. We don't need these scripts any more. And since
parallel_tests was removed in the previous commit, they are broken
anyway.
2018-10-09 17:06:59 +11:00
Maikel Linke
4cbc449a51 Remove unused parallel_tests gem
Reverts db47c01784
2018-10-09 16:54:08 +11:00
Pau Pérez Fabregat
5606550cd2 Merge pull request #2815 from openfoodfoundation/dependabot/bundler/rspec-retry-0.6.1
Bump rspec-retry from 0.5.6 to 0.6.1
2018-10-09 07:30:25 +02:00
Maikel
68c58dcb68 Merge pull request #2770 from openfoodfoundation/transifex
Transifex
2018-10-09 15:18:17 +11:00
Matt-Yorkley
3e39f3e749 Disable logout on password change 2018-10-08 23:06:54 +01:00
Matt-Yorkley
8f5fd41c8b Update email confirmation address 2018-10-08 21:38:47 +01:00
Matt-Yorkley
3ec8c12899 Update account setting spec for updating email address 2018-10-08 20:41:59 +01:00
Pau Pérez Fabregat
2aeed9763c Merge pull request #2789 from luisramos0/pending_order_syncer
[Spree Upgrade] Making broken OrderSyncerSpec tests pending, 9 tests to be fixed in issue #2788
2018-10-08 17:51:36 +02:00
Pau Pérez Fabregat
c30458b90a Merge pull request #2787 from luisramos0/pending_subs_mailer
[Spree Upgrade] Making SubsMailerSpec pending, 21 tests to be fixed in issue #2786
2018-10-08 17:51:24 +02:00
Pau Pérez Fabregat
875f0c01bc Merge pull request #2794 from luisramos0/pending_bulk_prod_update
[Spree Upgrade] Making BulkOrderUpdateSpec pending, 33 out of 34 tests to be fixed in #2790
2018-10-08 17:51:08 +02:00
Pau Pérez Fabregat
d2720652bb Merge pull request #2795 from luisramos0/pending_subs_pacement_job
[Spree Upgrade] Making SubsPlacementJobSpec pending, 6 tests to be fixed in issue #2793
2018-10-08 17:50:58 +02:00
Pau Pérez Fabregat
b51bd4aa4b Merge pull request #2796 from luisramos0/pending_prod_import
[Spree Upgrade] Making product import and product importer specs pending, 17 tests to be fixed in #2791
2018-10-08 17:50:48 +02:00
Pau Pérez Fabregat
86d9f4d56a Merge pull request #2797 from luisramos0/pending_reports
[Spree Upgrade] Making reports and reports_controller specs pending, 18 tests to be fixed in #2792
2018-10-08 17:50:25 +02:00
Pau Pérez Fabregat
ea6e522775 Merge pull request #2826 from 73VW/master
[README] Updated build status badge
2018-10-08 17:47:52 +02:00
Pau Pérez Fabregat
f5573f419b Merge pull request #2778 from coopdevs/refactor-entry-processor
Refactor entry processor
2018-10-08 17:11:23 +02:00
Matt-Yorkley
37a7cceead Fix bindings on angular orders data 2018-10-08 15:42:46 +01:00
Matt-Yorkley
b78716c283 Fix missing local variable 2018-10-08 14:49:29 +01:00
Maikel
d15f524cb1 Merge pull request #2779 from luisramos0/2-0-shipment-specs
[Spree Upgrade] Fixed several specs by defining line_items.target_shipmnt
2018-10-08 17:43:54 +11:00
Transifex-Openfoodnetwork
8b59943256 Updating translations for config/locales/de_DE.yml 2018-10-08 16:58:01 +11:00
luisramos0
574f031020 Fix typo in matomo optout iframe url in cookies_policy_helper 2018-10-05 21:36:03 +01:00
Kristina Lim
da904c908d Fix product import date when not all variants have it 2018-10-06 03:03:22 +08:00
Pau Pérez Fabregat
58a99a7f89 Merge pull request #2692 from Matt-Yorkley/bi/angular_orders
Angularise orders page
2018-10-04 21:10:48 +02:00
73VW
7a1cffb4b5 Updated build status badge 2018-10-04 18:43:30 +02:00
Pau Pérez Fabregat
b139f3839a Merge pull request #2806 from luisramos0/rep
Delete representative_view dependency, not used
2018-10-04 13:02:35 +02:00
niko
f99ed81863 Make 'Clear All' button work on order cycle page 2018-10-04 11:46:38 +02:00
niko
f65d3c2815 fix rubocop issue 2018-10-04 03:30:32 +02:00
niko
3ae38178a3 Move query from variant_overrides_controller to its model scope 2018-10-04 02:43:02 +02:00
Pau Perez
f8ec198f9f Remove on_demand from Api::CachedProductSerializer
This fixes lots of specs like the whole
spec/controllers/shop_controller_spec.rb, almost all specs of
spec/lib/open_food_network/products_renderer_spec.rb and most of
spec/features/consumer/shopping/shopping_spec.rb.
2018-10-03 14:27:59 +02:00
Pau Perez
75ad4254a6 Remove on_demand from Api::Admin::ProductSerializer
This change also moves the spec file to its appropriate place for the
sake of consistency and RSpec3-izes the test example.
2018-10-03 13:06:13 +02:00
luisramos0
8a22567291 Fix enterprise fee calculation. The adjustment.source value of the fee is now allowing the inheritance of the tax category from line items 2018-10-02 23:44:38 +01:00
luisramos0
1ce431b671 Reorganize code in EnterpriseFeeApplicator 2018-10-02 23:39:31 +01:00
luisramos0
3fbb98519d Adapt tax_rate_decorator to new spree version. Spree's default tax calculator now is checking line_items tax category, not the product tax category. See Spree's change here: a0a4b91f13 (diff-46e557ca8717d6ab5039470a40d00ea8) 2018-10-02 23:28:47 +01:00
dependabot[bot]
8a6da745a3 Bump rspec-retry from 0.5.6 to 0.6.1
Bumps [rspec-retry](https://github.com/noredink/rspec-retry) from 0.5.6 to 0.6.1.
- [Release notes](https://github.com/noredink/rspec-retry/releases)
- [Changelog](https://github.com/NoRedInk/rspec-retry/blob/master/changelog.md)
- [Commits](https://github.com/noredink/rspec-retry/compare/v0.5.6...v0.6.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-10-02 19:15:12 +00:00
dependabot[bot]
4e1521fd6a Bump haml from 4.0.4 to 4.0.7
Bumps [haml](https://github.com/haml/haml) from 4.0.4 to 4.0.7.
- [Release notes](https://github.com/haml/haml/releases)
- [Changelog](https://github.com/haml/haml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/haml/haml/compare/4.0.4...4.0.7)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-10-02 19:13:34 +00:00
luisramos0
c559cf0394 Fix Shipment adjustments specs on adjustment_spec by setting Config values before test objects are created 2018-10-02 16:17:26 +01:00
luisramos0
bed4ec4102 Improve docs and readability on tax_rate_decorator 2018-10-02 16:15:10 +01:00
luisramos0
795441484d Fix shipping adjustment basic test in adjustment_spec by removing extra shipping_method from test shipment 2018-10-02 16:15:00 +01:00
luisramos0
daafe73d81 Delete representative_view dependency, not used 2018-10-02 15:11:13 +01:00
Pau Pérez Fabregat
aa78b9e54c Merge pull request #2777 from coopdevs/setup-simplecov
Setup simplecov
2018-10-02 14:39:43 +02:00
Pau Pérez Fabregat
6ddcb01b7c Merge pull request #2736 from openfoodfoundation/dependabot/bundler/oj-3.6.10
Bump oj from 2.1.2 to 3.6.10
2018-10-02 14:38:26 +02:00
Matt-Yorkley
55d7d5d1e4 Rename #capture_path to #payment_capture_path 2018-10-02 11:10:51 +01:00
Matt-Yorkley
017e3d14df Use variable colour assignment 2018-10-02 11:10:21 +01:00
Pau Perez
6a7359a3c5 Pass supplier_ids in strategy #reset instead
This removes the need to expose supplier_ids through #<< and makes both
ResetAbsent and its strategies simpler.

This could be made even simpler if the strategies just implemented
`#relation` as public method and ResetAbsent called `#update_all` on
them. The data to be fetched is the only thing that changes but the
update is the same.
2018-10-01 17:37:49 +02:00
Pau Perez
82654cd1ee Turn delegation to a reader to make it simpler
This makes the solution less smart and as a result ResetAbsent improves
it's consistency and returns always an integer.
2018-10-01 16:40:34 +02:00
Pau Perez
148321f7b7 Make strategies class names more explicit 2018-10-01 16:40:34 +02:00
Pau Perez
af93af1a64 Replace strategy with a more explicit name 2018-10-01 16:40:34 +02:00
Pau Perez
8715fce295 Remove @import_settings in favor of Settings 2018-10-01 13:12:06 +02:00
Pau Perez
fd69c7672d Add specs for ResetAbsent strategies
This also fixes the case where there are no overrides to exclude.
2018-10-01 13:12:06 +02:00
Pau Perez
d527f6265a Remove pointless sum 2018-10-01 13:12:06 +02:00
Pau Perez
5eb10edbfd Inject #updated_ids to strategy
Their values are known beforehand.
2018-10-01 13:12:06 +02:00
Pau Perez
186801a1e2 Remove unused supplier_ids argument 2018-10-01 13:12:06 +02:00
Pau Perez
718f529ede Use nested module in test to improve readability 2018-10-01 13:12:06 +02:00
Pau Perez
f04fa4ed63 Do not treat ResetAbsent as a decorator anymore
This fully encapsulates it's logic and reduces its tight coupling with
EntryProcessor.
2018-10-01 13:12:06 +02:00
Pau Perez
95ae18a1ba Remove method delegation 2018-10-01 13:12:06 +02:00
Pau Perez
54d6bc5443 Don't use importing_into_inventory? in ResetAbsent
This completely decouples ResetAbsent from the particular strategy used.
2018-10-01 13:12:06 +02:00
Pau Perez
a10e58e20a Inject strategy_factory into ResetAbsent 2018-10-01 13:12:06 +02:00
Pau Perez
a9444b8909 Extract InventoryReset and Products strategies
Extract this strategy classes from ResetAbsent and move #reset there.
2018-10-01 13:12:06 +02:00
Pau Perez
8d7a11b0ac Make all steps of the algorithm have 2 branches 2018-10-01 13:12:06 +02:00
Pau Perez
23471346b6 Do not call ResetAbsent when preconditions not met 2018-10-01 13:12:06 +02:00
Pau Perez
a409353d37 Move import_settings query methods to Settings 2018-10-01 13:12:06 +02:00
Pau Perez
fd84bea463 Test that variants or overrides are actually reset 2018-10-01 13:12:06 +02:00
Pau Perez
b940f06238 Return early if reset_all_absent is not set
No need to go through half of the algorithm if the setting is not
enabled. It does not change per enterprise.

This also assumes "Previously we were updating both (products and inventory)
at the same time during one import, but now it's one or the other" in
Matt's words.
2018-10-01 13:12:06 +02:00
Pau Perez
c955e151b7 Pass enterprise ids as strs as current code does 2018-10-01 13:12:06 +02:00
Pau Perez
e04162415a Move code comment to be the method's doc 2018-10-01 13:12:06 +02:00
Pau Perez
5ac3598550 Inject Settings object in ResetAbsent 2018-10-01 13:12:06 +02:00
Pau Perez
b5766a2dd9 Extract common conditional clauses
This also turns local vars into ivars so that the behaviour can be
thoroughly tested. These ivars are meant to be removed once this class
is refactored further. Now there's no other way to ensure its state.
2018-10-01 13:12:06 +02:00
Pau Perez
ed073e9750 Rely on Settings and don't access internal struct. 2018-10-01 13:12:06 +02:00
luisramos0
d2fe203c89 Fixes error undefined 'stock_location' by adding shipment to line_items in the following specs: features/admin/reports_spec, lib/open_food_network/bulk_coop_report_spec, lib/open_food_network/customers_report_spec, lib/open_food_network/order_cycle_management_report_spec, lib/open_food_network/orders_and_fulfillments_report_spec and lib/open_food_network/packing_report_spec 2018-10-01 11:57:36 +01:00
Aditya Sridhar
372ae8e4aa updated the spacing to be consistent. 2018-09-30 16:10:57 -04:00
Aditya Sridhar
06b28c1ab4 Better docs for Stripe.publishable_key and Stripe.endpoint_secret. 2018-09-30 15:50:33 -04:00
luisramos0
1ff1e32398 Making reports and reports_controller specs pending, 18 tests to be fixed in issue #2792 2018-09-30 00:30:49 +01:00
luisramos0
7dfce6c368 Making product import and product importer specs pending, 17 tests to be fixed in issue #2791 2018-09-30 00:21:43 +01:00
luisramos0
1d49edb194 Making SubsPlacementJobSpec pending, 6 tests to be fixed in issue #2793 2018-09-30 00:10:31 +01:00
luisramos0
50ac519dd5 Making BulkOrderUpdateSpec pending, 33 out of 34 tests to be fixed in issue #2790 2018-09-30 00:04:33 +01:00
luisramos0
e79d184db0 Making broken OrderSyncerSpec tests pending, 9 tests to be fixed in issue #2788 2018-09-29 23:42:35 +01:00
luisramos0
801c4d1cab Making SubsMailerSpec pending, 21 tests to be fixed in issue #2786 2018-09-29 23:31:11 +01:00
Pau Perez
663db47433 Move products_reset_count to ResetAbsent 2018-09-29 10:57:23 +02:00
Pau Perez
3150741849 Extract ResetAbsent class from EntryProcessor 2018-09-29 10:57:18 +02:00
luisramos0
6c05be9772 Fixed 22 out of 30 broken tests in bulk_order_management_spec.rb by providing target_shipment in test line_items. 2018-09-27 21:13:11 +01:00
luisramos0
3cf10020bf Fix bug on slow page loads where banner and policy modal were both loaded
This solution makes the banner aware of the policy modal: the banner doesnt open if the policy modal is enabled
2018-09-27 17:47:36 +01:00
Pau Perez
16badcd1b5 Setup Simplecov to have code coverage analysis
This enables code coverage analysis when running specs in your dev
environment. Simply run them as usual and you'll see a line like the
following at the end of the output:

  Coverage report generated for RSpec to /home/pau/dev/openfoodnetwork/coverage

Simply browse to coverage/index.html and the results in a web UI.

This is a useful tool that helps you decide if the tests you added are
enough or not.
2018-09-27 15:57:02 +02:00
Luis Ramos
f0183cd17e Merge pull request #2762 from luisramos0/2-0-order-model-spec
[Spree Upgrade] Fixed updates of order.shipping_method_id and improved order, stock_location and shipment factories
2018-09-27 13:43:58 +01:00
Pau Pérez Fabregat
060b3c55f1 Merge pull request #2751 from luisramos0/2-0-order-details
[Spree Upgrade] Refactored spree/order_details, extracted delivery and pickup details into separate partials
2018-09-27 14:30:42 +02:00
Matt-Yorkley
54b17ac701 Use Spree::Order.pending_payments and remove service 2018-09-27 13:04:56 +01:00
Maikel
d488ae3f44 Merge pull request #2725 from mkllnk/2699-email-confirm-jobs
2699 email confirm jobs
2018-09-27 14:27:43 +10:00
Maikel Linke
f0021be53c Style I18n call 2018-09-27 13:33:09 +10:00
Maikel Linke
af1ac333df Create MailMethod before User when seeding 2018-09-27 13:33:09 +10:00
Maikel Linke
9dcc683dc0 Notify Bugsnag on sign-up errors
This may lead to more error reports than we want to see. A not existing
email address may cause Bugsnag to be notified. If this happens, we can
rescue form these specific errors and only report the rest.
2018-09-27 13:33:09 +10:00
Maikel Linke
17d951f99d Rescue from any sign-up errors
The most common failure would happen when sending the confirmation email
triggered by `user.save`. We rescue any errors here and give feedback to
the user.

This allows for immediate feedback when the user types an email address
that is not accepted by our mail server or the email setup is not
configured properly.
2018-09-27 13:33:08 +10:00
Maikel Linke
3ae073dce5 Convert specs to RSpec 3.7.1 syntax with Transpec
This conversion is done by Transpec 3.3.0 with the following command:
    transpec spec/controllers/user_registrations_controller_spec.rb

* 10 conversions
    from: obj.should
      to: expect(obj).to

* 7 conversions
    from: == expected
      to: eq(expected)

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2018-09-27 13:33:08 +10:00
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
luisramos0
921105301c Move angular-templates route and controller into Web engine
The route and controller were in the main app and the views in the engine, with this commit they stay all inside the engine
This is done to keep it simple and remove the unnecessary dependency between main app and engine
If we use this mechanism in the future for other things in the main app or other engines, we can find a way to extract/abstract this
2018-09-26 12:39:51 +01:00
luisramos0
b1c7e6c091 Fix assets precompilation by including web/all.js and web/all.css in the assets precompilation list in application.rb 2018-09-26 12:30:45 +01:00
luisramos0
a23b1b980d Make Web engine an isolated namespace engine mounted on / (without /web prefix)
This approach is better to separate concerns, see “Isolated Engine” here: https://api.rubyonrails.org/v3.2/classes/Rails/Engine.html
2018-09-26 12:30:06 +01:00
Pau Pérez Fabregat
037432d1a7 Merge pull request #2767 from luisramos0/order_empty
[Spree Upgrade] Destroy all shipments when clearing order
2018-09-26 08:54:11 +02:00
Matt-Yorkley
2dcc8ea4bb Add spec for pending payments service 2018-09-25 10:05:32 +01:00
Matt-Yorkley
e93d46e75a Use .find instead of .select().first 2018-09-25 09:35:05 +01:00
Maikel
267edbdb45 Merge pull request #2752 from HugsDaniel/apply_overrides_to_shipping_methods_new
[Spree Upgrade] Replace Spree::ShippingMethods new view by our own and apply overrides
2018-09-25 11:37:46 +10:00
Maikel
5ede6a40e7 Merge pull request #2766 from HugsDaniel/2744_add_require_ship_address_to_shipping_methods_form
[Spree Upgrade] Add require_shipping_address to shipping_methods_form
2018-09-25 11:37:15 +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
Maikel
bf1f2b93c6 Merge pull request #2768 from coopdevs/fire-unused-users-task
Remove no longer used rake task
2018-09-25 11:30:04 +10:00
luisramos0
4f32a8efc2 Fixed shipment factory by making shipments unique per order and stock_location factory by making stock_location unique 2018-09-25 00:49:03 +01:00
Transifex-Openfoodnetwork
97775c0bc1 Updating translations for config/locales/fr_CA.yml 2018-09-25 06:12:48 +10:00
Matt-Yorkley
1d9243af19 DRY and clarify serializer and service 2018-09-24 16:58:43 +01:00
Pau Perez
4a7ee9b91e Remove no longer used rake task 2018-09-24 17:17:10 +02:00
Matt-Yorkley
6f2760cf92 Move translations into their namespace and use '.key' format 2018-09-24 15:54:05 +01:00
Pau Perez
eb64569c9a Destroy all shipments when clearing order
Now we only clear the order's shipping_method, and in Spree 2.0 it can
have many shipments.
2018-09-24 15:25:33 +01:00
luisramos0
89114655fd Fixed shipping_method update in features/consumer/shopping/orders_spec, order.shipment is now updated instead of order.shipping_method_id 2018-09-24 15:13:36 +01:00
luisramos0
4476b88044 Fixed shipping_method update in models/spree/order_spec, order.shipment is now updated instead of order.shipping_method_id 2018-09-24 15:13:36 +01:00
luisramos0
99fff3d279 Fixed factory completed_order_with_fees by skipping a failing and unnecessary part of the checkout workflow
Fixed factory's shipment_with shipping_fees trait by ensuring only one shipping_rate in the shipment
2018-09-24 15:13:35 +01:00
Luis Ramos
08104c62be Merge pull request #2667 from luisramos0/2-0-ship-method-last-used-address
[Spree Upgrade] Adapt Address_Finder.last_used_ship_address to spree 2
2018-09-24 15:07:27 +01:00
Luis Ramos
0eb2854f8a Merge pull request #2680 from luisramos0/2-0-stable-x
[Spree Upgrade] Fixed inexistent order#shipping_method= in several specs
2018-09-24 15:07:04 +01:00
Pau Perez
f743b5f02f Extract Settings from Product Import processor
This encapsulates the data structure used by the entry processor to
check various settings. It still requires a lot of work to move more
logic to this new class.
2018-09-24 13:55:33 +02:00
Hugo Daniel
0dd1b1a976 Fix feature specs for shipping_methods 2018-09-24 12:40:59 +02:00
Hugo Daniel
06ee75981a Add require_shipping_address to shipping_methods_form 2018-09-24 12:35:40 +02: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
Pau Pérez Fabregat
128ec1623a Merge pull request #2760 from luisramos0/2-0-admin-enterprise-spec
[Spree Upgrade] In admin enterprises spec, replacing select2_search with select2_select
2018-09-24 11:15:18 +02:00
Pau Pérez Fabregat
52a412a218 Merge pull request #2638 from coopdevs/unit-test-variant-stock
Unit test variant stock
2018-09-24 11:14:03 +02:00
Maikel
9d48ea7b62 Merge pull request #2759 from luisramos0/del_old_spec_helper
Removed deprecated spec helper have_select2_option and fixed its last usage
2018-09-24 11:25:51 +10:00
Maikel
26eb79f5f2 Merge pull request #2729 from luisramos0/2-0-ship-method-curr-order-ser
[Spree Upgrade] Replace order.shipping_method_id in current_order_serializer
2018-09-24 08:56:21 +10:00
Maikel
9b10fbde2d Merge pull request #2728 from luisramos0/2-0-ship-method-ctrl
[Spree Upgrade] Remove use of Order#shipping_method_id from ShippingMethodsControllerDecorator
2018-09-24 08:54:03 +10:00
Matt-Yorkley
9f57b43a13 Move sortble header elements to a partial 2018-09-23 22:14:12 +01:00
Maikel
f0bb927020 Merge pull request #2734 from coopdevs/make-rubocop-useful
Get useful feedback from Rubocop Metrics cops
2018-09-23 19:48:05 +10:00
Maikel
89be54f79e Merge pull request #2750 from openfoodfoundation/transifex
Transifex
2018-09-22 16:05:04 +10:00
Transifex-Openfoodnetwork
7175434910 Updating translations for config/locales/en_US.yml 2018-09-22 01:25:48 +10:00
Pau Pérez Fabregat
3c4ec62352 Merge pull request #2753 from HugsDaniel/apply_overrides_to_shipping_methods_edit
[Spree Upgrade] Replace Spree::ShippingMethods edit view by our own and apply overrides
2018-09-21 16:16:25 +02:00
Pau Pérez Fabregat
33fa687c28 Merge pull request #2755 from HugsDaniel/apply_overrides_to_shipping_methods_form
[Spree Upgrade] Replace Spree::ShippingMethods form partial by our own and apply overrides
2018-09-21 15:35:41 +02:00
Pau Pérez Fabregat
36bdde6cc4 Merge pull request #2754 from HugsDaniel/apply_overrides_to_shipping_methods_index
[Spree Upgrade] Replace Spree::ShippingMethods index view by our own and apply overrides
2018-09-21 15:28:44 +02:00
Maikel
e2fd5a36d8 Merge pull request #2757 from luisramos0/delete_dead_specs
Deleted sample specs and one pending spec
2018-09-21 15:41:49 +10:00
luisramos0
a04e90d188 In admin enterprises spec, replacing select2_search with select2_select makes all tests pass. Also made screen size longer to avoid errors with overlaying components 2018-09-20 23:58:14 +01:00
luisramos0
33d2b65d65 Removed deprecated spec helper have_select2_option and fixed its last usage 2018-09-20 23:01:23 +01:00
luisramos0
2a68184c01 Deleted unused test helper for rabl views 2018-09-20 20:09:14 +01:00
Hugo Daniel
f9c5e732d8 Replace Spree::ShippingMethods form partial by our own and apply overrides 2018-09-20 19:21:02 +02:00
Pau Pérez Fabregat
20077c99b5 Merge pull request #2618 from coopdevs/enable-style-send-cop
Favor #public_send over #send using Rubocop's cop
2018-09-20 19:03:40 +02:00
Hugo Daniel
0d7e24e554 Change to new ruby hash syntax 2018-09-20 14:34:10 +02:00
Hugo Daniel
b0fa76f519 Change to new ruby hash syntax 2018-09-20 14:32:27 +02:00
Hugo Daniel
07cbb08b42 Change to new ruby hash syntax 2018-09-20 14:28:20 +02:00
Pau Pérez Fabregat
3dd1fcbc72 Merge pull request #2749 from luisramos0/delete-li-ship-method-name
Drop unused db column line_items.shipping_method_name
2018-09-20 13:26:26 +02:00
Hugo Daniel
56c1b073ee Replace Spree::ShippingMethods new view by our own and apply overrides 2018-09-20 12:37:26 +02:00
Hugo Daniel
493da83378 Replace Spree::ShippingMethods index view by our own and apply overrides 2018-09-20 12:35:49 +02:00
Hugo Daniel
a14337df5c Replace Spree::ShippingMethods edit view by our own and apply overrides 2018-09-20 12:34:16 +02:00
Matt-Yorkley
897e43fe0b Remove Spree's Deface data-hooks from new view 2018-09-20 11:33:22 +01:00
Maikel Linke
5763bf0518 Update all translations 2018-09-20 10:33:02 +10: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
ebb18e9394 Remove unneccesary method 2018-09-19 21:12:30 +01:00
Matt-Yorkley
cc98cc832c Prefer #public_send over #send 2018-09-19 21:12:30 +01:00
Matt-Yorkley
b57c6cf9ac Add errors when attempting to update non-updatable fields 2018-09-19 21:12:29 +01:00
Pau Perez
0ac16ce096 Get useful feedback from Rubocop Metrics cops
One of the biggest pros of linters like Rubocop is to get valuable feedback to
help write better code. The way we have Rubocop configured now we don't prevent
new code from adhere improved code quality and this is specially important when
touching code that already suffers from complexity.

Without all Rubocop's Metrics cops enabled there's no way to get this insights
and write better code. This enables them while regenerating the
`.rubocop_todo.yml` to hide the current violations.

So, next time we touch existing code that we think could be simpler, we should
go to `.rubocop_todo.yml` and remove any occurrences of the file in question.
This way we could Rubocop's feedback right in the editor. This is tremendously
helpful when refactoring. It shows you where to start.
2018-09-19 19:27:40 +02:00
Pau Pérez Fabregat
62bebdb15e Merge pull request #2698 from openfoodfoundation/dependabot/bundler/uglifier-4.1.19
[Security] Bump uglifier from 2.7.1 to 4.1.19
2018-09-19 18:02:06 +02:00
luisramos0
57bb1fec9a Adapt ShippingMethodsController to keep disallowing delete of shipping_methods associated with orders. Added controller tests to verify behaviour 2018-09-19 16:21:12 +01:00
Pau Perez
a2b3d8372e Reduce complexity of OrderUpdater decorator 2018-09-19 16:03:33 +02:00
Pau Pérez Fabregat
99ba9d7d1b Merge branch '2-0-stable' into unit-test-variant-stock 2018-09-19 15:41:21 +02:00
Pau Perez
b77dd41eb0 Refactored spree/order_details, extracted delivery and pickup details into separate partials.
This was copied/adapted from 6f7c8bb8b1
2018-09-19 14:20:44 +01:00
Pau Perez
0491a96d44 Ask to use backorderable? instead of on_demand 2018-09-19 15:12:38 +02:00
Transifex-Openfoodnetwork
454cd8bfbf Updating translations for config/locales/nb.yml 2018-09-19 22:30:06 +10:00
HugsDaniel
c4d4b52668 Merge pull request #2742 from openfoodfoundation/transifex
Transifex
2018-09-19 14:18:03 +02:00
Matt-Yorkley
3cbb576b4f Move payment object logic out of order serializer and delete code 2018-09-19 13:00:30 +01:00
Matt-Yorkley
ba254802f8 Move angular_pagination to /views/admin/shared/ 2018-09-19 13:00:30 +01:00
Matt-Yorkley
9ce32e3c14 Add new ordersCtrl spec 2018-09-19 13:00:30 +01:00
Matt-Yorkley
64620c2797 Tidy up response formats for easier testing 2018-09-19 13:00:30 +01:00
Matt-Yorkley
6768055b4d Split orders into 2 angular controllers 2018-09-19 13:00:30 +01:00
Matt-Yorkley
b2551b4e0b Rewrite existing specs 2018-09-19 13:00:30 +01:00
Matt-Yorkley
68f0c80016 Add loading message and spinner 2018-09-19 13:00:30 +01:00
Matt-Yorkley
9da6a5a9b3 Add column sorting to table 2018-09-19 13:00:30 +01:00
Matt-Yorkley
2112f296e4 Angularise filters 2018-09-19 13:00:30 +01:00
Matt-Yorkley
3b9d9db16b Add pagination 2018-09-19 13:00:29 +01:00
luisramos0
524f9af148 Drop unused db column line_items.shipping_method_name 2018-09-19 11:38:19 +01:00
Matt-Yorkley
93d273f94a Convert orders index table to use angular ng-repeat 2018-09-19 09:33:25 +01:00
Transifex-Openfoodnetwork
f0d015be0d Updating translations for config/locales/de_DE.yml 2018-09-19 08:34:42 +10:00
Transifex-Openfoodnetwork
258347bc63 Updating translations for config/locales/fr.yml 2018-09-19 01:45:12 +10:00
luisramos0
edcdf59621 In current_order_serializer, serialize shipping_method_id from order.shipping_method.id. Adapted respective spec. 2018-09-18 16:11:01 +01:00
Pau Perez
314ad5400f Move variant_stock.rb to concerns/ 2018-09-18 12:18:50 +02:00
Pau Pérez Fabregat
9f7d24934d Merge pull request #2671 from kristinalim/translations-any_enterprise_in_oc_filters
Translate "Any Enterprise" and "Any Schedule" in OC filters
2018-09-18 11:42:19 +02: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
Pau Pérez Fabregat
e79f7c13f1 Merge pull request #2727 from luisramos0/2-0-shipment-adjustment
[Spree Upgrade] Adapt order_decorator.shipments.adjustments to spree 2
2018-09-18 09:37:10 +02:00
Maikel
1130bb341d Merge pull request #2677 from luisramos0/2-0-sample-data
[Spree Upgrade] Fixed db:load_sample_data
2018-09-18 16:37:22 +10:00
Maikel
19df4ff640 Merge pull request #2701 from mkllnk/2700-improve-product-refresh-scheduling
2700 improve product refresh scheduling
2018-09-18 12:09:24 +10:00
dependabot[bot]
ccf7d91487 Bump oj from 2.1.2 to 3.6.10
Bumps [oj](https://github.com/ohler55/oj) from 2.1.2 to 3.6.10.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/commits/v3.6.10)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-09-17 19:16:27 +00:00
luisramos0
c22ac0086b Moved cookies_policy_helper to Web engine and respective spec 2018-09-17 16:05:38 +01:00
luisramos0
95f2f92cf3 Extracted cookies footer links from view to footer links helper 2018-09-17 16:05:38 +01:00
luisramos0
bded530137 Moved web api endpoint from /api to /web/api 2018-09-17 16:05:38 +01:00
luisramos0
dc5eb6448e Change web/all.css from sprockets to SASS and include web/all.css through darkswarm/all.css 2018-09-17 16:05:38 +01:00
luisramos0
d170a4d489 New domain Web (rails engine) with the following features extracted from the main app:
- cookies banner
- cookies policy page
- cookies policy and privacy policy links in the footer
2018-09-17 16:05:32 +01:00
Matt-Yorkley
e577bcb46f Prepare angular controller and serialized data 2018-09-17 14:18:23 +01:00
Pau Pérez Fabregat
0f627cdf39 Merge pull request #2661 from kristinalim/translations-copy_of_order_cycle
Translate "COPY OF" when cloning an OC
2018-09-17 12:38:29 +02:00
Pau Pérez Fabregat
0520f2187c Merge pull request #2540 from luisramos0/delete_dead_store
removed assets related to spree store: dead code
2018-09-17 11:33:56 +02:00
Kristina Lim
798a6ed391 Translate more text in OC filters 2018-09-17 10:09:17 +10:00
luisramos0
843cd44b23 In paypal_spec, fixed setting shipping_method in order, this is now done through order shipments 2018-09-17 00:51:01 +01:00
luisramos0
c66b611b99 Fixed setting shipping_method in the order through order.shipments in proxy_order_spec, lib/open_food_network/customers_report_spec and features/admin/shipping_methods_spec 2018-09-17 00:51:01 +01:00
luisramos0
75656668cd Fixed query in order_cycle_management_report and fixed the respective spec by setting shipping_method in order through shipments 2018-09-17 00:51:01 +01:00
luisramos0
38c2f52278 In features/admin/reports_spec, fixed setting shipping_method in order, this is now done through order shipments 2018-09-17 00:51:01 +01:00
luisramos0
fbd2d96b05 Moved shipment and shipping_method factories with flat rate and shipping fees to traits 2018-09-17 00:51:01 +01:00
luisramos0
7b6e4825e7 Fixed controllers/spree/admin/orders/customer_details_controller_spec:
- fixed order creation to use order.shipments instead of order.shipping_method
- adapted test to new spree 2 controller logic (shipments page is gone since 67f568914988bcc0a1fc520d15ed6444a6d12824 and redirect logic changed on e9cde1b4d570dd4f7f979ac71a58d6f3f342ebb4)
2018-09-17 00:44:14 +01:00
luisramos0
93ac99b5cc Added new factory for shipping_method_with trait delivery to fix order.shipping_method issue in features/admin/orders_spec 2018-09-17 00:44:14 +01:00
Maikel Linke
ac85b90315 Clarify private class method declaration 2018-09-15 10:18:54 +10:00
luisramos0
8e5f43ed25 Fixed current order serializer spec name 2018-09-14 23:12:00 +01:00
luisramos0
238d2f4feb Removed unnecessary code copied and replaced with call to identical super class 2018-09-14 22:20:21 +01:00
luisramos0
5b3a529487 Adapted address_finder_spec to spree 2 shipments 2018-09-14 18:41:59 +01:00
luisramos0
d685b706ad In order_decorator.update_shipping_fees! and order_decorator.update_payment_fees!, only update adjustment if it exists 2018-09-14 17:13:20 +01:00
luisramos0
2da7cc00f8 Fixed Address Finder last_used_ship_address. It now uses order.shipments.shipping_methods instead of order.shipping_method 2018-09-14 16:43:20 +01:00
luisramos0
6b3fd22db8 Adapted order_decorator to spree 2 by fixing adjustment.update! call on update_adjustment 2018-09-14 16:40:59 +01:00
Maikel
ce7be68fac Merge pull request #2660 from kristinalim/translations-failed_oc_creation
Translate and fix fallback errors when creating or updating OC
2018-09-14 16:58:39 +10:00
dependabot[bot]
05225aaba7 [Security] Bump uglifier from 2.7.1 to 4.1.19
Bumps [uglifier](https://github.com/lautis/uglifier) from 2.7.1 to 4.1.19. **This update includes security fixes.**
- [Release notes](https://github.com/lautis/uglifier/releases)
- [Changelog](https://github.com/lautis/uglifier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/lautis/uglifier/compare/v2.7.1...v4.1.19)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-09-14 06:29:22 +00:00
Maikel
c3f461ad6e Merge pull request #2622 from openfoodfoundation/dependabot/bundler/db2fog-0.9.0
Bump db2fog from 0.8.0 to 0.9.0
2018-09-14 16:26:54 +10:00
Maikel
e836ac0234 Merge pull request #2686 from HugsDaniel/2593_customize_user_guide_link
Enable setting a customized user guide link in general settings
2018-09-14 15:46:05 +10: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
Maikel
eabb9f4574 Merge pull request #2659 from kristinalim/translations-admin_area_fixes
Simple translation fixes for admin area and profile page
2018-09-14 14:38:25 +10:00
Maikel
da2f278060 Merge pull request #2649 from kristinalim/translations-fix_store_link_in_admin_header
Fix i18n translation for Store link in admin header for `fr`
2018-09-14 14:24:29 +10:00
Maikel
43a3ecff06 Merge pull request #2612 from openfoodfoundation/dependabot/bundler/jwt-1.5.6
Bump jwt from 1.5.4 to 1.5.6
2018-09-14 14:13:02 +10:00
Maikel
514f64c8d0 Merge pull request #2650 from kristinalim/translations-more_admin_header
Add "more" translation key
2018-09-14 13:31:13 +10:00
Maikel
6b56def649 Merge pull request #2697 from mkllnk/2655-fix-admin-payments
2655 fix admin payments
2018-09-14 11:26:20 +10:00
Maikel
1000bd4d24 Merge pull request #2658 from kristinalim/translations-order_and_shipment_emails
Allow fixing and customizing translations for order cancellation and shipment emails
2018-09-14 10:11:56 +10:00
Hugo Daniel
8dd0e01b8e Use explicit syntax for section objects in preference_sections definition 2018-09-13 12:34:06 +02:00
Pau Pérez Fabregat
692101db36 Merge pull request #2691 from coopdevs/fix-variant-override-spec
Fix failing spec due to wrong attribute
2018-09-13 12:21:35 +02:00
Maikel Linke
ec953e1db0 Style cache refreshment class 2018-09-13 17:22:01 +10:00
Maikel Linke
2e635f94f6 Make job queuing more robust and efficient 2018-09-13 17:20:11 +10:00
dependabot[bot]
b676bfdcc8 Bump jwt from 1.5.4 to 1.5.6
Bumps [jwt](https://github.com/jwt/ruby-jwt) from 1.5.4 to 1.5.6.
- [Release notes](https://github.com/jwt/ruby-jwt/releases)
- [Changelog](https://github.com/jwt/ruby-jwt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jwt/ruby-jwt/compare/v1.5.4...v1.5.6)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-09-13 02:34:11 +00:00
Maikel
065df96872 Merge pull request #2675 from Matt-Yorkley/bi/remake_views
Remake orders index view
2018-09-13 12:29:54 +10:00
Maikel
5e722bf57d Merge pull request #2634 from luisramos0/cookies_matomo_optout
[Cookies] Adds matomo optout iframe to cookies policy page
2018-09-13 12:29:09 +10:00
Maikel
f46c1e8414 Merge pull request #2424 from frank-west-iii/issue-2100-mini-racer
Replace therubyracer with mini_racer
2018-09-13 12:28:03 +10:00
Maikel Linke
81f60aab46 Make PaymentMethod serialisable with fees
https://github.com/openfoodfoundation/openfoodnetwork/issues/2655
2018-09-13 12:01:17 +10:00
Maikel Linke
d7b19750e5 Add spec for GH issue #2655 2018-09-13 12:01:16 +10:00
Maikel Linke
a447fe4f40 Require lib file where needed
We can't always rely on other parts of the code been loaded first. We
need to declare dependencies so that they are always present.

I just ran into this problem in my dev environment.
2018-09-13 12:01:16 +10:00
luisramos0
478dd68072 In cookies policy helper, added string interpolation to variable to avoid variable (Spree::Config entry) to break the concatenation. Added unit test to validate the error case 2018-09-12 18:30:24 +01:00
luisramos0
409f084bd4 Added matomo opt out iframe to cookies policy page 2018-09-12 18:30:24 +01:00
Pau Perez
ce148e0197 Fix failing spec due to wrong attribute 2018-09-12 18:19:08 +02:00
Pau Pérez Fabregat
3f5c799166 Merge pull request #2648 from kristinalim/fix-ask_anonymous_users_to_login_for_order_page
Fix ask anonymous users to login for order page
2018-09-12 16:17:34 +02:00
Hugo Daniel
cc43d789e2 Refacto edit method for content controller and enable custom user guide link 2018-09-12 14:51:53 +02:00
dependabot[bot]
91c0de3f2a Bump db2fog from 0.8.0 to 0.9.0
Bumps [db2fog](https://github.com/itbeaver/db2fog) from 0.8.0 to 0.9.0.
- [Release notes](https://github.com/itbeaver/db2fog/releases)
- [Changelog](https://github.com/itbeaver/db2fog/blob/master/CHANGELOG.md)
- [Commits](https://github.com/itbeaver/db2fog/commits/v0.9.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-09-12 11:09:57 +00:00
Pau Pérez Fabregat
e474271698 Merge pull request #2637 from Vadlusk/remove_css_splitter
Remove duplicate css_splitter references, delete split css file.
2018-09-12 13:07:15 +02:00
Pau Pérez Fabregat
64e71a1ee7 Merge pull request #2544 from kristinalim/fix-scrolling_in_modals
Fix top position, height, and scrolling with modals
2018-09-12 13:05:20 +02:00
luisramos0
145b4385a4 Fixed db:load_sample_data shipping_method build 2018-09-11 22:21:43 +01:00
Matt-Yorkley
4d9ebf0550 Apply submenu override 2018-09-11 12:17:28 +01:00
Matt-Yorkley
f08d6389d8 Apply capture order override 2018-09-11 12:06:58 +01:00
Matt-Yorkley
507f4d0878 OCD tidy up of visually misaligned filter 2018-09-11 11:53:37 +01:00
Matt-Yorkley
afedaea2b5 Apply special instructions override 2018-09-11 11:49:28 +01:00
Matt-Yorkley
8f174b1308 Apply ship shortcut override 2018-09-11 11:43:38 +01:00
Matt-Yorkley
ba0701457e Apply distributor td override 2018-09-11 11:42:08 +01:00
Matt-Yorkley
6389c552ca Apply distributor th override 2018-09-11 11:41:25 +01:00
Matt-Yorkley
1958ac9932 Apply distributor filter inputs override 2018-09-11 11:39:05 +01:00
Matt-Yorkley
c7e2f817ed Apply colgroup override 2018-09-11 11:34:34 +01:00
Matt-Yorkley
5a2491cb47 Apply ng-app override 2018-09-11 11:30:14 +01:00
Matt-Yorkley
980c46c63f Convert Spree view to HAML 2018-09-11 11:22:54 +01:00
Pau Pérez Fabregat
e58f7269c3 Merge pull request #2652 from luisramos0/2-0-within-zone
[Spree 2 Upgrade] Removed unused shipping_method.within_zone, customization not needed
2018-09-11 08:43:06 +02:00
Pau Pérez Fabregat
288f685fd4 Merge pull request #2654 from luisramos0/2-0-ship-method
[Spree 2 Upgrade] - Added adapted order.shipping_method
2018-09-11 08:27:36 +02:00
luisramos0
c00e6a5dc7 Added DB uniqueness constraint on order_id to shipments
By forbidding more than a row per order in the spree_shipments table we ensure all orders have no more than one shipment associated
2018-09-11 00:24:50 +01:00
luisramos0
3577f3790d Moved order.shipping_method to the OrderShippingMethod concern 2018-09-11 00:24:35 +01:00
luisramos0
62951f7d48 Removing duplicated factories inserted by previous PRs: 2668 and 2670 2018-09-10 16:51:20 +01:00
luisramos0
f24b20d28c Added adapted implementation of order.shipping_method to order_decorator 2018-09-10 14:32:50 +01:00
Pau Perez
8d8670bdf4 Fix typos in comments 2018-09-10 14:26:19 +02:00
Pau Pérez Fabregat
cde2f98514 Merge pull request #2590 from luisramos0/spree2_mail_method_create
Spree 2 - MailMethod - CreateMailMethod is now MailConfiguration
2018-09-10 12:08:23 +02:00
Pau Pérez Fabregat
a906ad15bd Merge pull request #2670 from luisramos0/2-0-ship-method-adjustment-spec
[Spree 2 Upgrade] Fix issues related to shipments in adjustment_spec
2018-09-10 11:32:54 +02:00
luisramos0
44d81622ac CreateMailMethod is now MailConfiguration and it uses Spree Config instead of MailMethod. The call from db/seeds was updated accordingly 2018-09-10 10:21:23 +01:00
Pau Pérez Fabregat
5a11af9118 Merge pull request #2668 from luisramos0/2-0-ship-method-order-spec
[Spree 2 Upgrade] Fixed models/order_spec issues related to order.shipping_method
2018-09-10 11:18:10 +02:00
Maikel
bce2c1cfd5 Merge pull request #2588 from luisramos0/spree2_mail_method_specs
Spree 2 Upgrade - MailMethod - Fix "undefined mail method" error in specs
2018-09-10 11:28:34 +10:00
luisramos0
2f1616a286 Changed reference from order.shipping_method to order.shipments in adjustment_spec 2018-09-09 23:32:59 +01:00
luisramos0
5bcc49a61c Removed calls to the now inexistent order.create_shipment! from specs 2018-09-09 23:16:19 +01:00
luisramos0
73512d3591 Replaced order.shipping_method with order.shipments in models.order_spec.
Fixed factory completed_order_with_fees used in order_spec and also in line_items_controller_spec and orders_controller_spec.
2018-09-09 23:13:32 +01:00
luisramos0
afedbe45ab Fixed scenario "guest order with registered email" in order_spec
Spree order factory requires user (we are setting it to nil below so, no impact on the test)
Defining shipping method is not necessary for this test
2018-09-09 23:13:32 +01:00
luisramos0
d6cff9bc68 Removed calls to the now inexistent order.create_shipment! from specs 2018-09-09 23:13:27 +01:00
Kristina Lim
02a909c1b1 Do not use image_tag for enterprise image previews
If Rails config.assets.compile is false and config.assets.digest is
true, which is the case for staging and production, image_tag fails when
the image file is not found.

We do not need sprockets to ensure presence of the image file for these
tags, because the correct SRC values are assigned through the JS.
Inserting HTML should be sufficient.
2018-09-08 23:23:49 +08:00
Maikel
5e0997d03e Merge pull request #2635 from apoc64/timezone_comments
Adds comments for setting up timezone in application.yml
2018-09-08 15:55:16 +10:00
Maikel
ce7c7b3867 Merge pull request #2640 from luisramos0/2-0-stable-spree-revision
Updated spree 2-0-4 revision used
2018-09-08 15:00:50 +10:00
Kristina Lim
003e65fbed Translate error when failing to create order cycle 2018-09-08 02:15:52 +08:00
Kristina Lim
2c2dd62f6a Translate "COPY OF" when cloning an OC 2018-09-08 02:06:52 +08:00
Kristina Lim
9dcdb67352 Translate inherits_properties label in product form 2018-09-08 01:37:57 +08:00
Kristina Lim
fc79aae17c Translate authorized shops headers in account page 2018-09-08 00:34:47 +08:00
Kristina Lim
c64acf47ab Fix translation key for "involving" in OC filters 2018-09-07 21:38:44 +08:00
Kristina Lim
86f4a118dd Translate placeholder for order cycle name filter 2018-09-07 17:58:34 +08:00
Kristina Lim
40443b19f1 Add translations for headers in enterprise index
This is for the view when logged in as enterprise manager.

The translations added are:

* Producer?
* Package
* Status
2018-09-07 17:51:08 +08:00
Kristina Lim
2cf608ffdf Add translations for shipment emails 2018-09-07 17:08:12 +08:00
Kristina Lim
f1d5088aaa Add translations for order cancellation emails 2018-09-07 17:01:43 +08:00
Maikel
62f5228f1f Merge pull request #2643 from luisramos0/transifex_manual
Fetched latest translations from transifex with tx pull --force
2018-09-07 16:46:24 +10:00
Maikel
3e0c74494d Merge pull request #2604 from Matt-Yorkley/pi/updating_variants_bug
Pi/updating variants bug
2018-09-07 15:10:18 +10:00
Maikel Linke
d6c2a36451 Blacklist libv8 version that breaks mini_racer 2018-09-07 14:11:33 +10:00
Frank West
b9fe1ced16 Replace therubyracer with mini_racer
This is being replaced to increase the reliability and speed of asset
compilation.
2018-09-07 14:11:30 +10:00
Maikel
937da277f7 Merge pull request #2628 from openfoodfoundation/dependabot/bundler/rubyzip-1.2.2
[Security] Bump rubyzip from 1.2.1 to 1.2.2
2018-09-07 10:51:41 +10:00
luisramos0
d2f4f8ccb2 Removed unused shipping_method.within_zone, customization not needed 2018-09-06 20:29:04 +01:00
Kristina Lim
d06bccb832 Change i18n key for Store link in admin header
spree_i18n translates the "store" key in different ways, sometimes like
"shop" and sometimes like "save". This could be because of a clash in
usage between Spree add-ons.

To be more specific, the "Store" link in the admin section now uses the
"admin.header.store" translation key.
2018-09-06 22:03:39 +08:00
Pau Perez
cd53ec1a4f Replace exception with DB uniqueness constraint
By forbidding more than a row per variant in the spree_stock_items we
can ensure all variants have a single stock_item associated.
2018-09-06 13:21:22 +02:00
Pau Perez
8848af15ee Raise when a variant has more than a stock item
This means we violated the business rules of having a single stock
location for the OFN instance and hence a single stock item per variant.

Although it is too late to preserve the data integrity we can know data
needs to be cleaned up.
2018-09-06 13:20:52 +02:00
Pau Perez
59883f9509 Add deprecation warnings for VariantStock methods
This will prevent other devs from relying on this methods and will tell
us the exact lines that call this methods, which will come in handy when
removing this module.
2018-09-06 13:20:52 +02:00
Pau Perez
fc5882686a Add unit tests to VariantStock
This also replaces the after_save callback to after_update.

We enforce a stock_item exists when modifying the variant and the
stock_item gets created on variant's after_create. This means it's not
possible to use any of the VariantStock's setters before the variant is
persisted so executing the callback on creation is pointless.
2018-09-06 13:20:52 +02:00
Kristina Lim
6d5f8553ef Add "more" translation key
This is used in places such as the adaptive menu in the admin section.

This is actually included in spree_i18n but not correctly translated for
fr.
2018-09-06 18:10:27 +08:00
Kristina Lim
f9533f8fb8 Refactor redirecting back after requiring login 2018-09-06 19:46:17 +10:00
Kristina Lim
cd41498da9 Ask to login when not authenticated for order page
Redirect the user to the login page, instead of responding with HTTP
401.
2018-09-06 16:26:48 +08:00
Kristina Lim
3bf9e95511 Add specs for existing behaviour in order page 2018-09-06 16:26:45 +08:00
Kristina Lim
28d2bb3d47 Wrap controller specs for viewing cart 2018-09-06 15:04:11 +08:00
Maikel
417c33a870 Merge pull request #2639 from luisramos0/2-0-stable-sept
Merging master into 2-0-stable (one month of commits in master)
2018-09-06 08:50:47 +10:00
Kristina Lim
339ea6fa91 Clean up SCSS as suggested by scss-lint 2018-09-06 04:21:35 +10:00
Kristina Lim
9258e8c464 Remove height limit for modals in small screens 2018-09-05 23:58:26 +08:00
Kristina Lim
169aa752d8 Enlarge potential size of modals for large screens
Change modals for large screens from 10% position from top and 80% max
height, to 5% position from top and 90% max height.

This is to accommodate the taller cookies policy modal.

It seems that it is not easy to apply a custom position and height to a
specific modal only. This doesn't seem to be supported by the modal
library currently being used.

Before the recent changes, most modals were rendering at 10px top
position (not the originally planned 10%), so changing this to 5%
doesn't seem to be much of a compromise.
2018-09-05 23:58:26 +08:00
Kristina Lim
f4725198e8 Move some CSS to pages/ subdirectory. 2018-09-05 23:58:26 +08:00
Kristina Lim
f03eb02269 Keep height of modal, dialog within screen height 2018-09-05 23:58:25 +08:00
Kristina Lim
a37e9f1b87 Use v0.9.0-20180826174721 in kristinalim fork of angular-foundation
There is a bug in the handling of % values for the "top" CSS property of
the modals. See details here:

https://github.com/kristinalim/angular-foundation/pull/1

A PR to the original repository has also been submitted, but the project
doesn't seem to be active anymore:

https://github.com/yalabot/angular-foundation/pull/319

And to another fork of the repository:

https://github.com/cwadrupldijjit/angular-foundation/pull/1

The bug was causing the 10% "top" CSS property for the modal to be
treated as 10px.
2018-09-05 23:58:25 +08:00
Kristina Lim
34adf7cf6c Lower the start point for sliding of modals
Occasionally, the page scrolls up while the modal is being opened. This
was causing the final position of the modal to be at the wrong location
relative to the viewport.

This was happening because of a race condition between the animation
that slides the modal from above the viewport to the middle, and focus()
which the modal does:

https://github.com/yalabot/angular-foundation/blob/0.8.0/src/modal/modal.js#L109

The final vertical position of the modal is at 10%, so the animation
which translates the modal -25% vertically was starting -15% above the
viewport. The focus() was then causing vertical scroll.

This lowers the starting point of the animation, so there will no longer
be scrolling.

Additionally, the animation would only happen on large screens. The CSS
property "top" is 0 for smaller screens.
2018-09-05 23:58:25 +08:00
Kristina Lim
6e55e5b1c7 Use maximum of 80% for modals in large screens
When there is enough content in the modal, the height of the modal plus
its top margin could exceed the height of the viewport.

Considering a top position of 10%, a max height of 80% renders a tall
modal vertically centered, with 10% remaining space at the bottom.
2018-09-05 23:58:22 +08:00
luisramos0
138fa41b8d Fetched latest translations from transifex with tx pull --force 2018-09-05 14:02:51 +01:00
Pau Pérez Fabregat
0a05e6944e Merge pull request #2625 from kristinalim/translations-rename_entreprise_keys_to_enterprise
Rename "entreprise" in i18n keys to "enterprise"
2018-09-05 13:23:02 +02:00
Pau Perez
b23cb55525 Fix current violations of Style/Send cop 2018-09-05 12:05:05 +02:00
luisramos0
89d51d75ae Merge branch 'master' into 2-0-stable-sept 2018-09-04 17:43:20 +01:00
Maikel
0d2fa3dc40 Merge pull request #2611 from luisramos0/cookies_banner_font_size
[Cookies] Increased cookies banner font size for med/large screens to improve readability
2018-09-04 11:35:32 +10:00
Maikel
1b6bb72966 Merge pull request #2587 from luisramos0/spree2_order_mailer_decorator_bug
Spree 2 Upgrade - MailMethod - Fixed bug on order_mailer_decorator (only visible in spree 2)
2018-09-04 11:29:51 +10:00
luisramos0
d29a1ebf9a Updated spree 2-0-4 revision used 2018-09-04 00:41:29 +01:00
Kristina Lim
ce0758d420 Add confirm dialog for enterprise image removal 2018-09-04 02:08:26 +08:00
Kristina Lim
368612cad6 Allow removal of enterprise logo and promo image 2018-09-04 02:08:25 +08:00
Kristina Lim
c9370672c6 Add JS support for removal of enterprise images 2018-09-04 02:08:12 +08:00
Kristina Lim
9c3bb863da Add endpoints for removing enterprise images 2018-09-04 01:32:39 +08:00
Kristina Lim
01d4b8fb10 Allow custom resource permission for admin controllers 2018-09-04 01:18:48 +08:00
Kristina Lim
f30032eee7 Include image URLs in serialized enterprise for admin 2018-09-04 01:18:45 +08:00
VadLusk
8efbe0e6d2 Delete _split2.css from application.rb assets precompile array. 2018-09-03 11:08:38 -06:00
Pau Pérez Fabregat
7dbbc3e9d8 Merge pull request #2610 from luisramos0/cookies_banner_bug
[Cookies] Added new test to cookies spec to cover bug on cookies banner and fix…
2018-09-03 17:23:17 +02:00
apoc64
fbce828305 Breaks comment into multiple lines 2018-09-03 08:56:42 -06:00
Pau Pérez Fabregat
903d70090e Merge pull request #2636 from luisramos0/heroku_dead_code
Removed old files that were used with, now unsupported, heroku
2018-09-03 12:49:19 +02:00
Pau Pérez Fabregat
0f118baa4e Merge pull request #2615 from mkllnk/2575-variant-on-hand-api
2575 variant on hand api
2018-09-03 11:16:02 +02:00
luisramos0
8004abbb9f Improved Order mailer and Subscriptions mailer specs by removing dependency to old mail method 2018-09-03 10:03:06 +01:00
luisramos0
921c8dfdf4 Removed unnecessary cancel_email from order_email_decorator (spree one is equivalent after ofn PR#2589). Also refactored remaining order_mailer_decorator methods by extracting duplicated code. 2018-09-03 10:03:02 +01:00
luisramos0
14d526efc2 removed assets related to spree store: dead code 2018-09-03 09:50:42 +01:00
Maikel
129e2c915e Merge pull request #2579 from openfoodfoundation/dependabot/bundler/angular-rails-templates-0.3.0
Bump angular-rails-templates from 0.2.0 to 0.3.0
2018-09-03 14:39:21 +10:00
Maikel
1b264403e0 Merge pull request #2624 from kristinalim/fix-no_order_link_in_subscription_emails_unless_user
Subscription emails for customer should not link to order page if customer has no user account
2018-09-03 14:38:56 +10:00
Maikel
3fadd06dc7 Merge pull request #2613 from luisramos0/cookies_better_policy_page
[Cookies] Updated cookies policy page text
2018-09-03 11:49:14 +10:00
Maikel
42afd426d5 Merge pull request #2620 from openfoodfoundation/dependabot/bundler/foreigner-1.7.4
Bump foreigner from 1.6.1 to 1.7.4
2018-09-03 11:48:48 +10:00
Maikel
11ab875b9a Merge pull request #2623 from openfoodfoundation/dependabot/bundler/eventmachine-1.2.7
Bump eventmachine from 1.2.3 to 1.2.7
2018-09-03 11:48:34 +10:00
Maikel
c510bbd8d0 Merge pull request #2589 from luisramos0/spree2_base_mailer_dec_update
Spree 2 Upgrade - MailMethod - Delete outdated base_mailer_decorator.from_address
2018-09-03 11:05:48 +10:00
VadLusk
f74a6e47d5 Remove css_splitter references, delete all_split2.css. #1361 #2633 2018-09-03 09:20:26 +10:00
luisramos0
512577768c Removed old files that were used with, now unsuported, heroku 2018-09-02 22:13:42 +01:00
apoc64
e62a755ddb Adds comments for setting up timezone in application.yml 2018-09-02 11:08:27 -06:00
luisramos0
59f8dd4458 Improved cookies spec by keeping global config values as they were before the test 2018-09-01 20:35:07 +01:00
Kristina Lim
f844236b9c Remove order link in non-user order cancellation email 2018-09-01 23:46:12 +08:00
Kristina Lim
5f2c3a1955 Remove order link in non-user failed payment email 2018-09-01 23:46:12 +08:00
Kristina Lim
f8244a400a Custom subscription placement email if non-user
The order link should not be provided if the order does not have an
associated user account.
2018-09-01 23:46:11 +08:00
Kristina Lim
ad8b120e48 Extract format for order cycle closing in emails
Using a helper for this, but this can be changed to look up a
translation key.
2018-09-01 23:46:08 +08:00
Matt-Yorkley
9d05e5c97a Remove duplicate line in spec 2018-09-01 14:09:07 +01:00
Kristina Lim
dc4037474d Test order links in subscription placement emails 2018-09-01 15:40:36 +08:00
Matt-Yorkley
d8bbcdc54b Decrease batch size to reduce chance of timeouts 2018-08-31 22:52:44 +01:00
Matt-Yorkley
4dfbbd60d4 Fix occasional StaleObjectError on variant updates 2018-08-31 19:47:08 +01:00
dependabot[bot]
4557bfbc17 [Security] Bump rubyzip from 1.2.1 to 1.2.2
Bumps [rubyzip](https://github.com/rubyzip/rubyzip) from 1.2.1 to 1.2.2. **This update includes security fixes.**
- [Release notes](https://github.com/rubyzip/rubyzip/releases)
- [Changelog](https://github.com/rubyzip/rubyzip/blob/master/Changelog.md)
- [Commits](https://github.com/rubyzip/rubyzip/compare/v1.2.1...v1.2.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-31 17:49:12 +00:00
Matt-Yorkley
75a9ea5bfa Prefer .flat_map(&foo) over .map(&foo).flatten 2018-08-31 15:38:38 +01:00
Matt-Yorkley
04d50d4555 Fix filter results bug in validation section 2018-08-31 15:00:29 +01:00
Kristina Lim
f5c44ef0e6 Rename "entreprise" in i18n keys to "enterprise" 2018-08-31 15:26:30 +08:00
Maikel
a9c8c033c7 Merge pull request #2566 from openfoodfoundation/dependabot/bundler/daemons-1.2.6
Bump daemons from 1.2.2 to 1.2.6
2018-08-31 14:54:53 +10:00
Maikel
c30e29051a Merge pull request #2594 from openfoodfoundation/dependabot/bundler/compass-rails-3.1.0
Bump compass-rails from 2.0.4 to 3.1.0
2018-08-31 13:47:22 +10:00
Maikel
42936be40a Merge pull request #2578 from luisramos0/spree2_fix_test_line_items
Spree2 fix test line items
2018-08-31 13:26:25 +10:00
Maikel Linke
13b9ecab21 Fix font issue in mobile menu 2018-08-31 11:23:11 +10:00
luisramos0
1b4e0cd73a Made the menu config default values more user friendly 2018-08-31 11:23:11 +10:00
luisramos0
e573a3fc2b The main menu is now translatable and configurable using Content configuration and translations. Added 7 menu entries to the translations file (each with text and url) and 7 content configuration points to enable/disable these. The mobile menu icons can also be configured. 2018-08-31 11:23:11 +10:00
dependabot[bot]
508643b64e Bump eventmachine from 1.2.3 to 1.2.7
Bumps [eventmachine](https://github.com/eventmachine/eventmachine) from 1.2.3 to 1.2.7.
- [Release notes](https://github.com/eventmachine/eventmachine/releases)
- [Changelog](https://github.com/eventmachine/eventmachine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eventmachine/eventmachine/compare/v1.2.3...v1.2.7)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-30 19:19:08 +00:00
dependabot[bot]
287b21b0cf Bump foreigner from 1.6.1 to 1.7.4
Bumps [foreigner](https://github.com/matthuhiggins/foreigner) from 1.6.1 to 1.7.4.
- [Release notes](https://github.com/matthuhiggins/foreigner/releases)
- [Changelog](https://github.com/matthuhiggins/foreigner/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matthuhiggins/foreigner/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-30 19:16:41 +00:00
Pau Perez
1de13a5049 Favor #public_send over #send using Rubocop's cop
Devs keep using `#send` although that method does not preserve
private/protected visibility. Watching after this turned out to be quite
time-consuming while doing code review.

Currently, the Style/Send cop doesn't enforce `#public_send` however
(that's what we want). It simply discourages the use of #send. See
https://github.com/rubocop-hq/rubocop/pull/2081#issuecomment-292251650
for details. So a new entry on the Code Conventions doc has been added
to overcome this limitation:
https://github.com/openfoodfoundation/openfoodnetwork/wiki/Code-Conventions#prefer-public_send-over-send
2018-08-30 18:48:45 +02:00
Pau Pérez Fabregat
b4bfa3ff2d Merge pull request #2591 from mkllnk/remove-rack-livereload
Remove gem rack-livereload
2018-08-30 13:50:57 +02:00
Maikel
1b88edea1f Merge pull request #2420 from stveep/stripe-admin-2
Stripe admin 2
2018-08-30 15:48:49 +10:00
Maikel Linke
d1f7828432 Fix pending spec
The link from the enterprise page was missing the enterprise id. So the
bulk edit page for fees was showing fees for all enterprises.
2018-08-30 14:50:41 +10:00
Maikel Linke
429bf132da Test creating a fee, not updating
The spec for creating an enterprise fee didn't actually create a new
fee. Because all enterprise fees are displayed, it changed an existing
fee.
2018-08-30 14:50:41 +10:00
Maikel Linke
297ea830dc Further style spec 2018-08-30 14:50:41 +10:00
Maikel Linke
bc1e8bfde6 Convert specs to RSpec 3.7.0 syntax with Transpec
This conversion is done by Transpec 3.3.0 with the following command:
    transpec spec/features/admin/enterprise_fees_spec.rb

* 27 conversions
    from: obj.should
      to: expect(obj).to

* 8 conversions
    from: == expected
      to: eq(expected)

* 4 conversions
    from: obj.should_not
      to: expect(obj).not_to

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2018-08-30 14:50:41 +10:00
Maikel Linke
a789aeb30a Speed up enterprise fee spec 2018-08-30 14:50:41 +10:00
Maikel Linke
0174b84254 Remove old deactivated code 2018-08-30 14:50:41 +10:00
Maikel Linke
cebcdea40c Replace obsolete count_on_hand call for variant
The variant factory supports only `on_hand` now.
2018-08-30 13:55:12 +10:00
Maikel Linke
e9c1868759 Update factory to fix tests
In Spree 2, products don't have `on_hand` or `on_demand` any more. But
we always create a standard variant in an after-save hook which accepts
these values due to our backwards compatibility patch.
2018-08-30 13:55:12 +10:00
Maikel Linke
c7648d67bd Add Variant stock API of Spree 1 2018-08-30 13:55:12 +10:00
Maikel
174bc15ac9 Merge pull request #2607 from openfoodfoundation/dependabot/bundler/pg-0.21.0
Bump pg from 0.13.2 to 0.21.0
2018-08-30 13:37:25 +10:00
dependabot[bot]
664db1b0c2 Bump pg from 0.13.2 to 0.21.0
Bumps [pg](https://bitbucket.org/ged/ruby-pg) from 0.13.2 to 0.21.0.
- [Changelog](https://bitbucket.org/ged/ruby-pg/src/master/History.rdoc)
- [Commits](https://bitbucket.org/ged/ruby-pg/branches/compare/v0.21.0..v0.13.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-30 03:19:13 +00:00
Maikel
8a97088bb6 Merge pull request #2606 from openfoodfoundation/dependabot/bundler/poltergeist-1.18.1
Bump poltergeist from 1.16.0 to 1.18.1
2018-08-30 13:16:47 +10:00
Maikel
1c61539119 Merge pull request #2585 from greysteil/bump-ams
Bump active_model_serializer to 0.8.4, and pin it
2018-08-30 10:00:22 +10:00
Maikel
fac29ebb96 Merge pull request #2595 from openfoodfoundation/dependabot/bundler/immigrant-0.3.6
Bump immigrant from 0.1.6 to 0.3.6
2018-08-30 09:56:37 +10:00
luisramos0
efcf680094 Fixed bulk_line_items_controller_spec by setting shipment on test line_items and by allowing shipment decorator to allow no adjustments in the shipment
Fixed 5 out of 7 tests in orders_and_fulfillments_report_spec by providing target_shipment in test line_items
Fixed 12 out of 44 broken tests in bulk_order_management_spec.rb by providing target_shipment in test line_items.” “The remaining 32 failing tests are now failing with the very common: undefined method on_hand= on Spree::Variant
Improved 1 test in reports_spec.rb by providing target_shipment in test line_items. Test now fails with undefined method Spree::Order.shipping_method
Fixed 9 tests in orders_controller_spec by providing target_shipment in test line_items
Fixed 4 tests in packing_report_spec.rb by providing target_shipment in test line_items. Failing tests are now failing with undefined product.on_hand? method
Fixed 8 tests in line_items_controller_spec by providing target_shipment in test line_items
Fixed 1 test in update_billable_periods_spec by providing target_shipment in test line_items
Fixed 4 tests in bulk_coop_report_spec by providing target_shipment in test line_items. The 2 failing tests are now failing with undefined product.on_hand? method
Improved 1 test in line_items_controller_spec by providing target_shipment in test line_items. Test is still failing with an unexpected method call
Fixed 1 test in order_and_distributor_report_spec by providing target_shipment in test line_items
2018-08-30 00:33:15 +01:00
luisramos0
02b968b312 Cookies policy page table has a single column now. Also made small updates to the page text, migrated translations to ruby translations and extracted repeated partial from cookies policy page view 2018-08-30 00:27:35 +01:00
luisramos0
53e7fcb019 Imcreased cookies banner font size for med/large screens to improve readability 2018-08-30 00:21:00 +01:00
luisramos0
8dc10ffc6e Added new test to cookies spec to cover bug on cookies banner and fixed it. See issue #2599.
Also, improved readability on cookies spec with some extracted methods.
2018-08-28 23:48:22 +01:00
dependabot[bot]
3d8c4c69a7 Bump poltergeist from 1.16.0 to 1.18.1
Bumps [poltergeist](https://github.com/teampoltergeist/poltergeist) from 1.16.0 to 1.18.1.
- [Release notes](https://github.com/teampoltergeist/poltergeist/releases)
- [Changelog](https://github.com/teampoltergeist/poltergeist/blob/master/CHANGELOG.md)
- [Commits](https://github.com/teampoltergeist/poltergeist/compare/v1.16.0...v1.18.1)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-28 19:15:06 +00: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
Maikel
189bd0911b Merge pull request #2574 from luisramos0/bulk_line_items_controller_spec_fix
Spree2 - Bulk line items controller spec fix
2018-08-28 16:47:04 +10:00
Maikel
79f50e0b7b Merge pull request #2353 from luisramos0/customers_admin_country_state
fixed UX problem in the state selector in customers admin
2018-08-28 16:46:00 +10:00
Maikel
b4bea59bb0 Merge pull request #2567 from greysteil/better-feater-matchers
Switch feature matcher style from `to_not have` to `to have_no`
2018-08-28 16:44:57 +10:00
Matt-Yorkley
6b9b8d8b73 Match multiple product names 2018-08-28 03:26:17 +01:00
Grey Baker
562a7936d9 Bump active_model_serializer to 0.8.4 2018-08-28 01:00:06 +01:00
Maikel
c39ac26f57 Merge pull request #2580 from openfoodfoundation/dependabot/bundler/stripe-3.3.2
Bump stripe from 3.3.1 to 3.3.2
2018-08-28 09:42:38 +10:00
Matt-Yorkley
8c2a49a57c Update PI model spec 2018-08-27 23:08:19 +01:00
Matt-Yorkley
1df1ddcf66 Add spec for saving product and variant simultaneously 2018-08-27 23:06:54 +01:00
luisramos0
082f9e404b Fixed test on order_cycle_spec by replacing eq with match_array 2018-08-27 21:04:18 +01:00
luisramos0
b5038fa5dc Changed calls to MailMethod in specs to calls to Spree::Config[:mails_from] 2018-08-27 21:02:54 +01:00
dependabot[bot]
61097c3bf9 Bump immigrant from 0.1.6 to 0.3.6
Bumps [immigrant](https://github.com/jenseng/immigrant) from 0.1.6 to 0.3.6.
- [Release notes](https://github.com/jenseng/immigrant/releases)
- [Changelog](https://github.com/jenseng/immigrant/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jenseng/immigrant/compare/v0.1.6...v0.3.6)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-27 19:18:13 +00:00
dependabot[bot]
67802cd4ee Bump compass-rails from 2.0.4 to 3.1.0
Bumps [compass-rails](https://github.com/Compass/compass-rails) from 2.0.4 to 3.1.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/compare/2.0.4...3.1.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-27 19:17:55 +00:00
Maikel Linke
58cbe492d4 Remove gem rack-livereload
I don't think that anybody is using it. I asked on Slack and people
didn't know what it was. I kept guard-livereload which is probably
offering the same, maybe even better.
2018-08-27 16:34:50 +10:00
Maikel
44faa116db Merge pull request #2583 from mkllnk/seed-mail-connection-type
Configure mail TLS or SSL connection when seeding
2018-08-27 09:52:56 +10:00
Kristina Lim
28792fc895 Add tests for adding/updating enterprise images 2018-08-26 03:58:19 +08:00
luisramos0
0de691b821 Delete outdated base_mailer_decorator.from_address (it used old MailMethod). This way we rely on the correct spree base_mailer.from_address (that gets it from Spree::Config 2018-08-25 13:47:05 +01:00
luisramos0
27f5e6db8a Fixed bug on order_mailer_decorator. When cancel_email is called with order id in paramater order, order.number will fail. This is only seen in spree 2 because only spree 2 calls this method with order id. Bug introduced here: 32d2adc8a2 (diff-aa82d768109073ea8ad7858146630be4R9). Spree change introduced here: 8d90ae15f8 (diff-1e2ba31309f1f1abd2a4b626036d316fR94) 2018-08-25 12:50:36 +01:00
Maikel
8eee8f96ed Merge pull request #2557 from Matt-Yorkley/pi/class_descriptions
Class descriptions for Product Import
2018-08-24 18:14:12 +10:00
Matt-Yorkley
717f626dfe Refactor enterprise validation 2018-08-24 15:51:37 +10:00
Matt-Yorkley
2b057a26d5 Add primary_producer to index to reduce queries 2018-08-24 15:51:37 +10:00
Matt-Yorkley
666fbf53bf Validate enterprise.is_primary_producer? 2018-08-24 15:51:37 +10:00
Maikel
616b42a14d Merge pull request #2555 from luisramos0/cookie_http_only
Added httponly to cookieConsent cookie, this makes this cookie secure…
2018-08-24 15:50:13 +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
Maikel Linke
b158c92998 Configure mail TLS or SSL connection when seeding
This allows to seed the secure connection type of the default mail
method.
2018-08-24 14:03:21 +10:00
Maikel
871e423e12 Merge pull request #2548 from kristinalim/feature-bulk_update_of_order_cycle_name
Make OC name editable from the OC index
2018-08-24 11:38:31 +10:00
Maikel
c4c4547338 Merge pull request #2572 from greysteil/bump-webmock
Bump webmock
2018-08-24 08:49:11 +10:00
dependabot[bot]
358bb3030a Bump stripe from 3.3.1 to 3.3.2
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 3.3.1 to 3.3.2.
- [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/v3.3.1...v3.3.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-23 19:16:15 +00:00
dependabot[bot]
2e4a8d6318 Bump angular-rails-templates from 0.2.0 to 0.3.0
Bumps [angular-rails-templates](https://github.com/pitr/angular-rails-templates) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/pitr/angular-rails-templates/releases)
- [Changelog](https://github.com/pitr/angular-rails-templates/blob/master/CHANGELOG.md)
- [Commits](https://github.com/pitr/angular-rails-templates/compare/v0.2.0...v0.3.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-23 19:15:48 +00:00
luisramos0
910297572e Removed unnecessary currency from CartService constructor, using order.currency instead 2018-08-23 12:40:18 +01:00
luisramos0
ec069b1e3e Converted specs to latest rspec syntax 2018-08-23 12:39:58 +01:00
luisramos0
c7b202f932 Fixed CodeClimate warnings on services/cart_services.rb 2018-08-23 12:39:58 +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
luisramos0
6caa361354 Moved Spree::OrderController.populate to new CartController.
This was done to make order populate independent of Spree::OrdersController
2018-08-23 12:37:52 +01:00
Maikel
0312bf93dd Merge pull request #2556 from luisramos0/cookies_failing_tests
Make cookies tests more stable
2018-08-23 13:29:02 +10:00
Maikel Linke
00b8b0a36c Sleep to avoid race conditions in cookie spec
We tried a lot to avoid these sleep commands, but nothing worked. So
it's better to have reliable specs than fast specs.
2018-08-23 13:13:05 +10:00
Maikel
0c35d1bade Merge pull request #2570 from openfoodfoundation/dependabot/bundler/atomic-1.1.101
Bump atomic from 1.1.99 to 1.1.101
2018-08-23 11:05:46 +10:00
Maikel
5dd0aed1c0 Merge pull request #2569 from openfoodfoundation/dependabot/bundler/rack-livereload-0.3.17
Bump rack-livereload from 0.3.16 to 0.3.17
2018-08-23 10:56:00 +10:00
Maikel
bc192dabbc Merge pull request #2564 from openfoodfoundation/dependabot/bundler/fuubar-2.3.2
Bump fuubar from 2.2.0 to 2.3.2
2018-08-23 10:10:07 +10:00
Maikel
7d40e960f4 Merge pull request #2563 from openfoodfoundation/transifex
Transifex
2018-08-23 10:06:16 +10:00
Maikel
92e9392bc5 Merge pull request #2561 from mkllnk/2233-enable-embedded-shopping-spec
Enable embedded shopping spec
2018-08-23 09:23:12 +10:00
luisramos0
a97138dd58 Fixed bulk_line_items_controller_spec by setting shipment on test line_items and by allowing shipment decorator to allow no adjustments in the shipment 2018-08-22 23:20:30 +01:00
Grey Baker
468c29b8c1 Use new basic auth stub style 2018-08-22 21:35:56 +01:00
dependabot[bot]
b459ed7122 Bump webmock from 1.8.11 to 3.4.2
Bumps [webmock](https://github.com/bblimke/webmock) from 1.8.11 to 3.4.2.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v1.8.11...v3.4.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-22 21:26:05 +01:00
dependabot[bot]
f35e24d5ce Bump atomic from 1.1.99 to 1.1.101
Bumps [atomic](https://github.com/ruby-concurrency/atomic) from 1.1.99 to 1.1.101.
- [Release notes](https://github.com/ruby-concurrency/atomic/releases)
- [Commits](https://github.com/ruby-concurrency/atomic/compare/1.1.99...1.1.101)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-22 19:18:33 +00:00
dependabot[bot]
c5b426fded Bump rack-livereload from 0.3.16 to 0.3.17
Bumps [rack-livereload](https://github.com/onesupercoder/rack-livereload) from 0.3.16 to 0.3.17.
- [Release notes](https://github.com/onesupercoder/rack-livereload/releases)
- [Commits](https://github.com/onesupercoder/rack-livereload/commits)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-22 19:17:49 +00:00
Grey Baker
a747561e77 Switch feature matcher style from to_not have to to have_no 2018-08-22 09:29:48 +01:00
dependabot[bot]
8fb5625f1d Bump daemons from 1.2.2 to 1.2.6
Bumps [daemons](https://github.com/thuehlinger/daemons) from 1.2.2 to 1.2.6.
- [Release notes](https://github.com/thuehlinger/daemons/releases)
- [Changelog](https://github.com/thuehlinger/daemons/blob/master/Releases)
- [Commits](https://github.com/thuehlinger/daemons/compare/v1.2.2...v1.2.6)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-22 07:48:28 +00:00
dependabot[bot]
ade005bb2c Bump fuubar from 2.2.0 to 2.3.2
Bumps [fuubar](https://github.com/thekompanee/fuubar) from 2.2.0 to 2.3.2.
- [Release notes](https://github.com/thekompanee/fuubar/releases)
- [Changelog](https://github.com/thekompanee/fuubar/blob/master/CHANGELOG.md)
- [Commits](https://github.com/thekompanee/fuubar/compare/releases/v2.2.0...releases/v2.3.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-22 07:47:04 +00:00
Maikel
4417a8f156 Merge pull request #2539 from luisramos0/delete_dead_cart
removed Cart route, controller, model and specs: dead code
2018-08-22 17:35:58 +10:00
Transifex-Openfoodnetwork
1bbc615496 Updating translations for config/locales/fr_CA.yml 2018-08-22 08:37:41 +10:00
Transifex-Openfoodnetwork
39b3a964dd Updating translations for config/locales/fr.yml 2018-08-22 04:25:59 +10:00
luisramos0
653804d14c Make cookies test more stable 2018-08-20 21:08:09 +01:00
luisramos0
61f69905f8 fixed UX problem in the state selector in customers admin 2018-08-20 20:51:22 +01:00
luisramos0
898e41acfb Removed monkeypatchs to scope variants on inventory_unit and line_item decorators. We need to make the scoping somewhere else in spree2, see #2559 2018-08-19 20:23:31 +01:00
stveep
17f2ba47ca Add label for card field 2018-08-19 12:00:31 +01:00
stveep
8c6b8d5e84 Move injectors outside Stripe partial to satisfy dependencies 2018-08-19 11:50:34 +01:00
stveep
286101c934 PR changes: switch syntax for mapCC, remove ng-init 2018-08-19 10:43:53 +01:00
stveep
c0f41b6833 PR changes - erb to haml, don't update en_GB translations 2018-08-19 10:43:53 +01:00
stveep
b3da7049c6 Should not hide post code on admin side as no billing address otherwise 2018-08-19 10:43:53 +01:00
stveep
ff7dc811e9 Add translations for messages and remove old placeholder translation 2018-08-19 10:43:53 +01:00
stveep
f9a221e2ff add to manifest, tidy up requirements, hide postcode similar to frontend 2018-08-19 10:43:53 +01:00
stveep
a848b9172e Change name to AdminStripeElements to avoid confusion; add status bar for StatusMessages 2018-08-19 10:43:53 +01:00
stveep
8272aebe29 Add Stripe form and duplicate Stripe Elements in backend Angular app 2018-08-19 10:43:53 +01:00
Matt-Yorkley
fbbbc93aba Class descriptions for Product Import 2018-08-18 11:42:02 +01:00
luisramos0
56879377d5 Added httponly to cookieConsent cookie, this makes this cookie secure, cannot be altered by javascript 2018-08-17 22:57:57 +01:00
Maikel
e0d13010bb Merge pull request #2543 from openfoodfoundation/transifex
Transifex
2018-08-17 17:36:22 +10:00
Maikel Linke
7dccbb5213 Enable embedded shopping spec
It was disabled in
https://github.com/openfoodfoundation/openfoodnetwork/pull/2232, because
it was very unreliable. But it seems stable again since
https://github.com/openfoodfoundation/openfoodnetwork/pull/2468.
2018-08-17 17:00:15 +10:00
Matt-Yorkley
28b1fc076a Remove empty SKU values if empty 2018-08-16 14:29:50 +01:00
Kristina Lim
c14e7ea8d5 Allow bulk update of order cycle name 2018-08-16 21:18:24 +08:00
luisramos0
91e57cb893 Removed Cart table, its dependency on spree orders table and removed some more dead code related to this 2018-08-15 23:29:28 +01:00
Transifex-Openfoodnetwork
d76112e072 Updating translations for config/locales/de_DE.yml 2018-08-14 17:18:51 +10:00
Maikel Linke
c9862535f8 Import required colour definitions in SCSS
This avoids asset compile errors like this one:

  Sass::SyntaxError: Undefined variable: "$disabled-light".
2018-08-14 10:01:48 +10:00
luisramos0
8681618490 Fixed CodeClimate scss feedback on cookies banner and policy page css 2018-08-14 10:01:48 +10:00
luisramos0
ccd5147b11 Added angular templates route and controller to serve angular templates from the server, instead of precompiled assets. This was used to fix a problem with the cookies policy page template that was using a Spree configuration 2018-08-14 10:01:48 +10:00
luisramos0
1c20967ca4 Added a button to close the cookies policy page at the bottom of the page to improve UX on mobile 2018-08-14 10:01:48 +10:00
luisramos0
bff5581a42 Added functional tests for cookies related features: cookies policy page, cookies banner and privacy policy link 2018-08-14 10:01:48 +10:00
luisramos0
4b64369ddb Added GA and Matomo toggle in Legal Settings in the global settings in the BO and added GA and Matomo cookies details to the cookies policy page (according to what is configured in the BO) 2018-08-14 10:01:48 +10:00
luisramos0
ca35c59e52 Moved the footer TOS URL from the content settings to the new section legal settings in the global settings 2018-08-14 10:01:48 +10:00
luisramos0
d920c32376 Added cookies banner toggle and privacy URL to a new section called Legal Settings in the global settings in the BO 2018-08-14 10:01:48 +10:00
luisramos0
92f9cbd00a Added new cookies banner (with link to cookie policy page and the accept cookies button) 2018-08-14 10:01:48 +10:00
luisramos0
08c5d8f3ab Added new cookies policy page and added a link to it in the footer (cookies policy link) 2018-08-14 10:01:48 +10:00
luisramos0
362ed8ed08 Changed modals max height from 120% to 100% so that the content in the modal is never outside the viewport 2018-08-14 10:01:48 +10:00
Transifex-Openfoodnetwork
4f751eb3e3 Updating translations for config/locales/nb.yml 2018-08-13 17:08:33 +10:00
Maikel
910c1d437d Merge pull request #2536 from openfoodfoundation/transifex
Transifex
2018-08-13 15:48:11 +10:00
luisramos0
0b9061df28 removed Cart route, controller, model and specs: dead code 2018-08-11 22:17:12 +01:00
Transifex-Openfoodnetwork
6c306aa1dd Updating translations for config/locales/fr.yml 2018-08-10 21:09:21 +10:00
luisramos0
3b1bd53d3a Added basic integration with Matomo
Added matomo script and added a new matomo settings menu entry under configuration. Improved organization of en.yml by grouping configuration screens.
2018-08-10 16:12:58 +10:00
Kristina Lim
6251c72921 Add divider between admin enterprise index actions 2018-08-10 12:17:31 +10:00
Kristina Lim
17978f58c7 Rename edit link in admin enterprise index
Change "Edit Profile" link to "Settings".
2018-08-10 12:17:31 +10:00
Kristina Lim
295604b689 Change heading for edit enterprise page
Change the start of the heading from "Editing:" to "Settings:".
2018-08-10 12:17:31 +10:00
Kristina Lim
0b4fcf8a14 Change enterprise "Manage" button to "Settings" 2018-08-10 12:17:30 +10:00
Kristina Lim
b91019ad64 Split translation key for enterprise manage button
The ".manage" key is still used by the column header for the "Manage"
buttons.
2018-08-10 12:12:26 +10:00
Maikel Linke
9dcbd9076e Override in_stock? to prepare for Spree 2.0 2018-08-09 14:22:43 +10:00
Maikel Linke
b84e524f2d Prepare inventory report for Spree upgrade
This change could impact the performance of the report. But therefore it
takes VariantOverrides into consideration. The old code ignored the
distributor for this filter. It also ignored the `on_demand` flag.
2018-08-09 14:22:43 +10:00
Maikel Linke
289d0b937f Style ScopeVariantToHub 2018-08-09 14:22:43 +10:00
Maikel Linke
27ddb712c1 Remove unused scope Spree::Variant.in_stock
Our added scope is not used anywhere and conflicts with the Spree
upgrade.

https://github.com/openfoodfoundation/openfoodnetwork/issues/2014
2018-08-09 14:22:43 +10:00
Maikel
33f6dc21e7 Merge pull request #2516 from kristinalim/cleanup-move_admin_and_spree_from_routes
Separate admin and Spree routes from main file
2018-08-09 10:10:49 +10:00
Maikel
f93ed0de85 Merge pull request #2519 from mkllnk/more-efficient-login-in-specs
More efficient login in specs
2018-08-09 10:05:54 +10:00
Maikel
03468efa7e Merge pull request #2346 from oeoeaio/subs-totals
Subs: totals in backend are consistent and include fee breakdown
2018-08-07 18:17:13 +10:00
Maikel Linke
9aff9fbce2 Remove empty spec 2018-08-07 16:01:38 +10:00
Maikel Linke
b628ead525 Speed up shipping methods spec 2018-08-07 16:01:38 +10:00
Maikel Linke
54552f2be7 Speed up admin schedules spec 2018-08-07 16:01:37 +10:00
Maikel Linke
819a173167 Speed up reports spec 2018-08-07 16:01:37 +10:00
Maikel Linke
aa677a117b Speed up admin products spec 2018-08-07 16:01:37 +10:00
Maikel Linke
eb550505ae Speed up admin payment method spec 2018-08-07 16:01:37 +10:00
Maikel Linke
9023b16395 Speed up admin orders spec
From 80s to 74s.
2018-08-07 16:01:37 +10:00
Maikel Linke
71a381e48e Speed up order cycles spec
From 68 to 63 seconds.
2018-08-07 16:01:37 +10:00
Maikel Linke
f4cd5a7e4b Speed up admin enterprise spec
From 40s to 36s.
2018-08-07 16:01:37 +10:00
Maikel Linke
121bc51feb Speed up admin enterprises spec
From 6.5s to 5.3s.
2018-08-07 16:01:37 +10:00
Maikel Linke
f0da823445 Speed up enterprise user spec
From 1.9s to 1.7s.
2018-08-07 12:41:07 +10:00
Maikel Linke
e4ebeb8a29 Remove dead spec code
The code has been inactive since 2015 and was probably obsolete anyway.
2018-08-07 12:37:49 +10:00
Maikel Linke
0b39054954 Speed up relationships spec
From 18s to 12s: 33% speed up
2018-08-07 12:33:26 +10:00
Maikel Linke
126f312c6b Make spec more robust not relying on order
Enterprises can be in different order. Using `with_options` doesn't
care about the order.
2018-08-07 12:30:59 +10:00
Maikel Linke
edb32218b0 Use quick login to speed up product edit spec
From 48s to 44s: 8% speed up
2018-08-07 12:11:15 +10:00
Maikel Linke
0edf393c12 Use quick login to speed up spec
We don't need to visit the admin dashboard before each spec.
On my machine:

  54 seconds before
  47 seconds after
  speed up by 13%
2018-08-07 10:56:42 +10:00
Maikel Linke
30fad228c5 Remove code duplication in spec helper 2018-08-07 09:24:31 +10:00
Maikel
32846af230 Merge pull request #2517 from kristinalim/cleanup-disable_rubocop_cop_rails_activerecordaliases
Disable rubocop cop "Rails/ActiveRecordAliases"
2018-08-07 09:11:00 +10:00
Kristina Lim
d77a94335b Update .rubocop_todo.yml 2018-08-06 18:45:52 +08:00
Kristina Lim
a494fb274e Disable rubocop cop Rails/ActiveRecordAliases
The methods :update! and :update (to replace :update_attributes! and
:update_attributes) were not added until Rails 4.

See this for more information:
https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Rails/ActiveRecordAliases
2018-08-06 18:12:43 +08:00
Kristina Lim
b67c8cc9f1 Improve requiring of additional routes
This is more appropriate, and allows changes the separate route files to
be loaded automatically in the development environment.
2018-08-06 17:04:03 +08:00
Kristina Lim
4d34693c05 Move Spree route customizations from main file 2018-08-06 09:57:29 +08:00
Kristina Lim
72036a4993 Move admin routes from main file 2018-08-06 09:57:24 +08:00
Maikel Linke
f0be8ff290 Style proxy order serializer 2018-08-03 15:07:22 +10:00
Maikel Linke
b736560d63 Inform about inaccurate subscription totals
https://github.com/openfoodfoundation/openfoodnetwork/pull/2346#issuecomment-409822038
2018-08-03 14:59:27 +10:00
Matt-Yorkley
c8397024e4 Streamline Product Import UX flow 2018-08-03 14:33:35 +10:00
Maikel Linke
d5fdda1c46 Fix typo translating Enterprises 2018-08-03 12:15:50 +10:00
Maikel Linke
c48889f368 Remove duplicate translation key 2018-08-03 12:15:50 +10:00
Rob Harrington
cead905d05 Use estimated subscription total for proxy orders if order has not been initialized 2018-08-03 12:14:25 +10:00
Rob Harrington
fb93351386 Show fee breakdown in line items panel if present 2018-08-03 12:14:25 +10:00
Maikel
d726b0a851 Merge pull request #2509 from coopdevs/update-spree-fork-version
Update Spree's fork revision in Gemfile
2018-07-31 09:26:00 +10:00
Maikel
f04903bca0 Merge pull request #2493 from HugsDaniel/2433-change-from-simple-product-to-base-product
Reimplement Spree's simple_product in OFN factory
2018-07-31 07:40:42 +10:00
Hugo Daniel
ce46f3de39 Removed empty line 2018-07-30 12:11:02 +02:00
Pau Perez
c4b23b62d0 Update Spree's fork revision in Gemfile 2018-07-30 18:11:02 +10:00
Maikel
915531acc4 Add section about documentation updates
This should prevent issues like https://github.com/openfoodfoundation/openfoodnetwork/issues/2427.

Also converted comments into HTML syntax so that you don't have to delete them when creating a PR.
2018-07-30 14:44:07 +10:00
Maikel
8ecc786b99 Include bug severity in issue template
And formatted for easier reading and writing.
2018-07-30 14:28:01 +10:00
Pau Perez
43bf7293bf Merge branch 'master' into 2-0-stable
* master: (125 commits)
  Fix syntax error in GETTING_STARTED.md
  Fix syntax error in README.md
  Fix link syntax errors in REAME.md and GETTING_STARTED.md
  Style recently merged code
  Update gem i18n-js to pick up locale changes
  Fix embedded shopfront menu responsiveness
  Add communications links to README
  Fix script/setup by making it less clever
  Change import and reset logic to work with first page
  Move options to first page
  Fix wrong sort predicates in customer index
  Reset reverse when clicking another column to sort
  Move logic for toggling by column into SortOptions
  Generalize sorting through SortOptions service
  Remove unused sorting preferences in ColumnsCtrl
  Fix frontend sorting in "Bulk Order Management"
  Fix frontend sorting in "Customers" index
  Change sorting to be done in ascending order first
  Wrap rows in customer index with TBODY tag
  Update .rubocop_todo.yml
  ...
2018-07-27 10:21:47 +02:00
Pau Pérez Fabregat
67bac8aae4 Merge pull request #2503 from coopdevs/upgrade-spree-2-0-4-version
[Spree upgrade] Update Gemfile.lock to fetch the latest revision
2018-07-27 08:51:06 +02:00
Maikel
238a07dbd6 Merge pull request #2488 from HugsDaniel/2434-remove-dash-dependency
[Spree Upgrade] Remove dependency to Dash and Jirafe
2018-07-27 13:00:15 +10:00
Rob H
7f26b1494b Fix syntax error in GETTING_STARTED.md 2018-07-27 12:49:18 +10:00
Rob H
eb89b74022 Fix syntax error in README.md 2018-07-27 12:48:37 +10:00
Pau Perez
6fb95d30c3 Update Gemfile.lock to fetch the latest revision
Since https://github.com/openfoodfoundation/spree/pull/6 got merged, we
need the app to use the latest Spree fork revision to pick up those
changes.
2018-07-26 18:06:57 +02:00
Pau Pérez Fabregat
5a4bc0c584 Merge pull request #2366 from coopdevs/refactor-ship-address-from-distributor
Refactor ship address from distributor
2018-07-26 12:04:02 +02:00
Maikel
933ff63de2 Merge pull request #2389 from luisramos0/bulk_prod_edit_fix
admin page fetcher is now synchronously fetching all pages before reso…
2018-07-26 14:09:21 +10:00
Maikel
3f91850301 Merge pull request #2499 from mkllnk/update-com-links-in-readme
Add communications links to README
2018-07-26 11:39:29 +10:00
Rob Harrington
a16058f52a Fix link syntax errors in REAME.md and GETTING_STARTED.md 2018-07-26 11:38:39 +10:00
Maikel
02331221ef Merge pull request #2471 from Matt-Yorkley/pi/post_save
PI: post-save UI changes
2018-07-26 11:26:51 +10:00
Maikel Linke
2ceb969925 Style recently merged code
We enabled more Rubocop checks and code that was merged around the same
time, didn't comply with the new checks.
2018-07-26 10:52:56 +10:00
Maikel Linke
f0f9662957 Update gem i18n-js to pick up locale changes
We had some problems recently with changes in en.yml not being picked up
by i18n-js to be included in all.js. There have been some patches for
the current version that have an impact on that:

578555f57e
db3cdf82aa
a88b206644

Trying it out locally, the updated i18n-js gem works while the old
version doesn't update the Javascript translations when new keys are
added. To reproduce the issue, you can add a new key in `en.yml` and
reference it from an Angular template in `app/assets/javascripts/`. The
old version complained about a missing translation until you ran:
```
bundle exec rake tmp:cache:clear
```

We don't need to do that any more.
2018-07-26 10:45:35 +10:00
Pau Pérez Fabregat
97e61dc6f9 Merge pull request #2498 from Matt-Yorkley/embedded_mobile
Fix embedded shopfront menu responsiveness
2018-07-25 15:10:46 +02:00
Pau Perez
eaf108718c Add doc to method 2018-07-25 13:52:05 +02:00
Pau Perez
a0d2ec5666 Enable OFN's custom OrderUpdater 2018-07-25 13:51:01 +02:00
Pau Perez
d1e65691cf Copy distributor addr. when using a pick up method
This copies the distributor's address when at least one of the order shipments
uses a shipping method that requires shipping address.
2018-07-25 11:07:16 +02:00
Pau Perez
f1896313b3 Move shipping_address_from_distributor to OrderUpdater
This is still Spree-1.3 compatible not considering multiple shipments
and shipping methods.
2018-07-25 11:07:16 +02:00
Pau Perez
21d905a092 Refactor OrderUpdater to decorate Spree's one
This replaces the nasty class eval and provides some encapsulation
2018-07-25 11:07:16 +02:00
Pau Perez
72f02ee1ee RSpec3-ize OrderUpdater spec 2018-07-25 11:07:16 +02:00
Matt-Yorkley
ae5fd864d1 Fix embedded shopfront menu responsiveness 2018-07-25 17:41:26 +10:00
Pau Pérez Fabregat
a3cace46e0 Merge pull request #2431 from mkllnk/2007-no-shipment-for-payment
2007 Skip shipment creation for payment step
2018-07-25 08:46:47 +02:00
Hugo Daniel
eab04e0d86 Reimplement Spree<2.0 :simple_product factory in OFN 2018-07-24 16:27:30 +02:00
Hugo Daniel
ec751c0a78 Remove admin analytics ability 2018-07-24 15:27:22 +02:00
Maikel Linke
5db5bc65c0 Add communications links to README
This was originally proposed by Kirsten in:
https://github.com/openfoodfoundation/openfoodnetwork/pull/2478
2018-07-24 11:18:54 +10:00
Maikel
ffd3d28889 Merge pull request #2474 from Matt-Yorkley/pi/import_options
PI: import options UI
2018-07-24 10:34:14 +10:00
Maikel
30be40ebd9 Merge pull request #2441 from kristinalim/fix-scoping_issue_in_sorting_of_tables
Fix front-end sorting in "Customers" index and "Bulk Order Management" page
2018-07-24 10:31:13 +10:00
Pau Pérez Fabregat
26d6ca4a54 Merge pull request #2487 from coopdevs/stricter-code-climate
Make CodeClimate config more strict
2018-07-23 12:42:06 +02:00
Pau Pérez Fabregat
687d7c5f38 Merge pull request #2483 from coopdevs/fix-setup-script
Fix script/setup by making it less clever
2018-07-23 12:31:50 +02:00
Pau Pérez Fabregat
b60bada542 Merge pull request #2495 from mkllnk/remove-newrelic
Remove unused gem newrelic-rpm
2018-07-23 11:19:27 +02:00
Pau Perez
14480b920e Fix script/setup by making it less clever
Now we ask the dev to create the "ofn" user as precondition. This is
way easier than developing a script that fits all possible setups.

It also stops requiring a particlar Postgres version. Although in
production we use 9.5 it is very unlikely we will use any
version-specific feature in the near future. This should make it a bit
easier for new devs to set up their environment.
2018-07-23 10:59:32 +02: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
Kristina Lim
89ac558f37 Fix wrong sort predicates in customer index 2018-07-23 10:33:40 +10:00
Kristina Lim
47608525c6 Reset reverse when clicking another column to sort 2018-07-23 10:33:40 +10:00
Kristina Lim
5179f7fd63 Move logic for toggling by column into SortOptions 2018-07-23 10:33:40 +10:00
Kristina Lim
55d0b1dfc5 Generalize sorting through SortOptions service 2018-07-23 10:33:40 +10:00
Kristina Lim
8b6b694244 Remove unused sorting preferences in ColumnsCtrl 2018-07-23 10:33:40 +10:00
Kristina Lim
2bba72c5a9 Fix frontend sorting in "Bulk Order Management" 2018-07-23 10:33:40 +10:00
Kristina Lim
822b2c929a Fix frontend sorting in "Customers" index
The scope for customersCtrl did not have access to the sorting
preferences stored in the nested ColumnsCtrl scope. To address this,
the page has been changed to use a new set of sorting preferences
declared in the customersCtrl scope itself.

Also, these sorting preferences are now stored in an object. This
enables the parent scope to see changes to the sorting preferences which
are done via the nested ColumnsCtrl scope,

The "Bulk Order Management" page is also affected by the same scoping
issue. Once this page is fixed, we can remove remnants of the sorting
preferences initialized in ColumnsCtrl.
2018-07-23 10:33:39 +10:00
Kristina Lim
9f09861d8b Change sorting to be done in ascending order first
Currently, we always toggle "reverse" when triggering a sort.

If "reverse" is initially set to false, triggering a sort for the first
time then toggles this to true. The effect is that, the first time that
sorting is done, the rows are sorted in reverse order.

This is not intuitive - they should be sorted in ascending order first.
2018-07-23 10:33:39 +10:00
Kristina Lim
745390dcd5 Wrap rows in customer index with TBODY tag 2018-07-23 10:33:39 +10:00
Maikel
12838ba61e Merge pull request #2468 from mkllnk/improve-testing-embedded-pages
Improve testing embedded pages
2018-07-23 08:59:11 +10:00
Maikel
add250b30f Merge pull request #2473 from Matt-Yorkley/pi/stop_if_invalid
PI: Don't allow save if invalid entries are present
2018-07-23 08:54:01 +10:00
Maikel
df29d4d611 Merge pull request #2472 from lilwillifo/logo-sizing-to-css
Logo sizing to css
2018-07-23 08:47:45 +10:00
Pau Perez
7d790a7d59 Update .rubocop_todo.yml 2018-07-20 18:58:37 +02:00
Hugo Daniel
514fc0a781 Remove dependency to Dash and Jirafe 2018-07-20 13:04:58 +02:00
Pau Perez
44fe3de732 Make CodeClimate config more strict
There's no point of using Code Climate if most of its checks are
disabled. Now it scores our codebase with an A and reports just 2 code
smells, 64 duplications and 14 other issues. That couldn't farther from
reality. If we care about the architecture and maintainability of our
app, this is a must.

To transition towards enabling all default checks, I started with
scss-lint, duplication and method-complexity. This doesn't mean will
have to fix them all straight away as we'll add the current violations
to the `.rubocop_todo.yml` but it'll point us the parts where we should
focus our efforts.
2018-07-20 09:08:03 +02:00
Maikel Linke
5f4115fbd9 Remove unused gem newrelic-rpm 2018-07-20 16:56:12 +10:00
Margaret Williford
512e974672 move width setting for tagline logo image from HTML to CSS 2018-07-20 14:00:06 +10:00
Margaret Williford
d952276e2a move footer logo sizing from html to css 2018-07-20 14:00:06 +10:00
Maikel
23964b2542 Merge pull request #2422 from luisramos0/1667_email_validation_fix
1667 manage validations emails
2018-07-20 12:19:23 +10:00
Maikel
1b571e9835 Merge pull request #2379 from Matt-Yorkley/uk/guest_label
Add guest label to admin customers index
2018-07-20 08:53:26 +10:00
Maikel Linke
962c54b606 Remove unnecessary expectation
The `iframe` is rendered in pure HTML and should always be there.
2018-07-19 10:45:33 +10:00
Maikel Linke
8a3a617870 DRY specs with new EmbeddedPagesHelper 2018-07-19 10:44:43 +10:00
luisramos0
8246893652 Added notice for unexpected mail in confirmation instructions mail (HugsDaniel) 2018-07-19 09:26:29 +10:00
Maikel
1dbd265b30 Merge pull request #2384 from luisramos0/open_new_tab
added directive to make links open in new tab by default in textangul…
2018-07-19 09:17:09 +10:00
Matt-Yorkley
e3162b0a14 Change import method to fix missing variable error on asset precompilation 2018-07-18 23:00:50 +01:00
Matt-Yorkley
456e05d5d2 Include subfolders in scss import 2018-07-18 22:56:10 +01:00
Matt-Yorkley
24ff5555be Create admin SCSS colour palette 2018-07-18 22:56:10 +01:00
Matt-Yorkley
75e52a7a91 CSS tweaks fo guest flag 2018-07-18 22:56:10 +01:00
Matt-Yorkley
583f16b38d Add guest label to admin customers index 2018-07-18 22:56:10 +01:00
Pau Pérez Fabregat
4fe1e1fc9f Merge pull request #2482 from Matt-Yorkley/uk/mail_config
Allow preferred_mails_from and preferred_mail_bcc to be set from configs
2018-07-18 19:20:55 +02: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
37e2d76a39 Merge pull request #2477 from mkllnk/2465-use-right-subscriptions-translation
Reference existing translation: closed order cycle
2018-07-18 16:47:35 +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
23cbcda0c3 Allow preferred_mails_from and preferred_mail_bcc to be set from configs 2018-07-18 15:43:02 +01:00
Matt-Yorkley
5e142205bd Use relative translation keys 2018-07-18 13:35:23 +01:00
Matt-Yorkley
5737c9803d Add unit_type field to inventory template 2018-07-18 12:59:52 +01:00
Matt-Yorkley
c7deae4253 Remove category field from inventory specs 2018-07-18 12:59:19 +01:00
Matt-Yorkley
b37bea35fa Use relative translation keys 2018-07-18 11:43:31 +01:00
Matt-Yorkley
18206c9369 Remove old view file 2018-07-18 11:42:07 +01:00
Pau Pérez Fabregat
8ae5d5f52e Merge pull request #2415 from oeoeaio/update-readme
Update README.md and add GETTING_STARTED.md
2018-07-18 11:19:33 +02:00
Pau Pérez Fabregat
d56698e4a6 Merge branch 'master' into update-readme 2018-07-18 10:59:20 +02: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
Pau Pérez Fabregat
bd05af5a29 Merge pull request #2442 from kristinalim/translations-enterprise_relationships_to_enterprise_permissions
Change "Enterprise Relationships" to "Enterprise Permissions"
2018-07-17 14:48:08 +02:00
Kristina Lim
c16f4203f9 Rename enterprise "Relationships" to "Permissions"
This only updates en* translations, and does not affect URLs and other
back-end references.
2018-07-17 16:03:48 +10:00
Pau Pérez Fabregat
0fd57ee7bd Merge pull request #2390 from luisramos0/buk_prod_edit_rounding_issue
fixed number rounding issue in product bulk edit
2018-07-16 16:44:59 +02:00
luisramos0
4a44454210 fixed number rounding issue in product bulk edit 2018-07-16 13:13:58 +10:00
Maikel Linke
4d68723fe3 Reference existing translation: closed order cycle
https://github.com/openfoodfoundation/openfoodnetwork/issues/2465

Viewing a customers subscription could display a translation missing
error.
2018-07-16 09:24:32 +10:00
Matt-Yorkley
c4af50e95c Add sidebar to Import index page 2018-07-15 23:12:26 +01:00
Matt-Yorkley
632b991952 Add downloadable templates 2018-07-15 21:25:42 +01:00
Matt-Yorkley
f344b7893d Remove Product Import guide page 2018-07-15 20:49:55 +01:00
Matt-Yorkley
8aed78b0e6 Don't allow save if invalid entries are present 2018-07-15 10:21:36 +01:00
Matt-Yorkley
a4210a1cab PI post-save UI changes 2018-07-15 00:27:21 +01:00
Pau Pérez Fabregat
da344adbcd Merge pull request #2466 from kristinalim/doc-notes_about_i18n_in_contributing
Add section about internationalisation to CONTRIBUTING.md
2018-07-13 19:43:52 +02:00
Pau Pérez Fabregat
c2d9b094d3 Merge pull request #2419 from frank-west-iii/issue-2412-duplicate-menu
Remove spree product navigation override
2018-07-13 19:43:07 +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
Frank West
e3b7e050a0 Remove spree product navigation override
This was here to override the original spree products navigation link,
but since moving back to the index action this had the side effect of
adding an additional navigation item instead. We can simply remove this
override to get rid of the additional menu item.
2018-07-13 16:58:57 +10:00
Maikel Linke
8e90488117 Use progress formatter on Travis to avoid timeout
We had a few Travis builds lately that timed out, because no output was
received. Even though our standard formatter Fuubar should detect Travis
and print the right output, nothing was visible in our builds.
https://github.com/travis-ci/travis-ci/issues/1337

In this patch, I tell Travis to use Rspec's default formatter to print
dots for every passed test.
2018-07-13 16:51:56 +10:00
Maikel Linke
599f1a966b Use embedded shops example for tests 2018-07-13 16:36:19 +10:00
Kristina Lim
4ebcf4e3c3 Add internationalisation info to CONTRIBUTING.md 2018-07-13 14:26:27 +08:00
Maikel Linke
66980b247a Fix test of opening shops in new windows
The test case had some hard-coded enterprise name that didn't match
anything. It then confirmed that all found links (none) would open a new
window. So it wasn't confirming anything.
2018-07-13 15:37:19 +10:00
Maikel Linke
6f737d8d1e Unclutter spec setup 2018-07-13 15:37:19 +10:00
Maikel Linke
ed747ec612 Use embedded groups example for tests 2018-07-13 15:37:19 +10:00
Maikel Linke
185cf9a312 Remove code duplication 2018-07-13 15:37:18 +10:00
luisramos0
dfb510debe admin page fetcher is now receiving a onLastPageComplete function that is used to show "no results" messages only after the last page is fetched 2018-07-13 15:01:43 +10:00
Maikel Linke
d5d1eae715 Improve spec description 2018-07-13 09:04:42 +10:00
Maikel Linke
43883d1ab4 Simplify email confirmation directive
Making better use of Angular features.
Adding a spec for this functionality.
2018-07-13 09:04:42 +10:00
Maikel Linke
fbe2f7ab4c Remove unused variable from mailer
The second variable passed by Devise is actually a hash, not a token.
2018-07-13 09:04:41 +10:00
Maikel Linke
a531135804 Remove unused data-hooks 2018-07-13 09:04:41 +10:00
Maikel Linke
e37213f6a5 Remove redundant edit action 2018-07-13 09:04:41 +10:00
Maikel Linke
28c2ad7160 Move override into view 2018-07-13 09:04:41 +10:00
Maikel Linke
a347837044 Move override into view 2018-07-13 09:04:41 +10:00
Maikel Linke
ab9975cb6c Move override into view 2018-07-13 09:04:41 +10:00
Maikel Linke
339b04a044 Convert spree admin user list to haml 2018-07-13 09:04:41 +10:00
Maikel Linke
9020e7ddd9 Import admin user list from Spree 2018-07-13 09:04:41 +10:00
Maikel Linke
60b66540df Add resend email button to admin user form
Fixes https://github.com/openfoodfoundation/openfoodnetwork/issues/1589
2018-07-13 09:04:41 +10:00
Maikel Linke
6a58deb436 Add message about unconfirmed email to user form 2018-07-13 09:04:41 +10:00
Maikel Linke
8157897f76 Remove unused data hooks 2018-07-13 09:04:41 +10:00
Maikel Linke
9050a52cc2 Move admin user form override into view 2018-07-13 09:04:41 +10:00
Maikel Linke
2032ed6328 Convert admin user edit form to haml 2018-07-13 09:04:41 +10:00
Maikel Linke
cb1dc6e657 Import admin user edit form from spree_auth_devise 2018-07-13 09:04:41 +10:00
Maikel Linke
23dd09a8fa Convert Spree view from erb to haml 2018-07-13 09:04:41 +10:00
Maikel Linke
652cc6e677 Import admin user edit view from spree_auth_devise
We would like to do some customisations and importing the whole file is
simpler and less error prone than using Spree's overrides.
2018-07-13 09:04:40 +10:00
Maikel Linke
97d1b5d7fe Add spec for creating users 2018-07-13 09:04:40 +10:00
Maikel
b65578fdc5 Merge pull request #2408 from mkllnk/cleanup-route
Remove impossible route
2018-07-13 09:01:33 +10:00
Maikel
0bd40f498a Merge pull request #2447 from mkllnk/update-translation-documentation
Move i18n locale doc to wiki and reference that
2018-07-12 10:07:39 +10:00
Maikel Linke
86f2d7a344 Remove impossible route
Hash fragments are not part of the http request and not sent to the
server. So the routes will never see a hash fragment which means that
this route is never used.
2018-07-12 10:05:08 +10:00
luisramos0
b302a1d03d added Enterprise registration exit message and moved step TYPE translations to a new structure on en.yml (test if transifex picks up the existing translations) 2018-07-12 08:53:06 +10:00
Pau Pérez Fabregat
8cec9d5723 Merge pull request #2451 from Matt-Yorkley/pr_categories
Add changelog category to PR template
2018-07-11 22:40:52 +02:00
Matt-Yorkley
056df62359 Add changelog category to PR template 2018-07-11 18:03:45 +01:00
Pau Pérez Fabregat
79b86a4885 Merge pull request #2448 from kristinalim/fix-broken_great_pr_link_in_contributing
Fix broken "making a great pull request" link in CONTRIBUTING.md
2018-07-11 13:19:17 +02:00
Kristina Lim
5508c6741f Fix broken "great-pr" link in CONTRIBUTING.md 2018-07-11 14:10:20 +08:00
Maikel Linke
24f77184cf Move i18n locale doc to wiki and reference that 2018-07-11 11:31:27 +10:00
Maikel Linke
2334f0854c Less invasive modifying the checkout state machine 2018-07-11 10:55:12 +10:00
Pau Pérez Fabregat
deb04c3075 Merge pull request #2444 from openfoodfoundation/transifex
Transifex
2018-07-10 12:12:05 +02:00
Maikel Linke
459057a7db Revert accidental copy and paste 2018-07-10 10:31:51 +10:00
Maikel
26c23887e2 Merge pull request #2276 from oeoeaio/subs-use-default-card
Subs: Use Default Card for Subscriptions
2018-07-10 10:22:58 +10:00
Maikel Linke
f9a3338755 Simplify serialiser with delegate 2018-07-10 10:01:18 +10:00
Maikel Linke
b478ef9fd0 Make admin serialiser specs runnable on their own 2018-07-10 09:59:00 +10:00
Transifex-Openfoodnetwork
15db5e1d50 Updating translations for config/locales/en_GB.yml 2018-07-09 20:23:01 +10:00
Rob Harrington
3dacd06b6b Reload order before sending emails to ensure state is up to date 2018-07-05 19:26:12 +10:00
Rob Harrington
0afa9fae8e Check authorisation before attempting to charge credit cards on order cycle close 2018-07-05 19:26:12 +10:00
Rob Harrington
4fd333bbaf Remove obsolete reference to credit_card from subscription serializer 2018-07-05 19:26:12 +10:00
Rob Harrington
a902af42a3 Update attribute that errors are added to from credit_card to payment_method 2018-07-05 19:26:12 +10:00
Rob Harrington
edde929ced Replace uses of #stub with #allow in Admin::CustomersController 2018-07-05 19:26:12 +10:00
Rob Harrington
4863f2b5b4 Remove unrequired credit_card_id field from subscriptions table 2018-07-05 19:26:12 +10:00
Rob Harrington
21c3f7d21c Remove unrequired #cards and #addresses actions from Admin::CustomerController 2018-07-05 19:26:12 +10:00
Rob Harrington
e0d46aa105 Add new serializer to allow search for customer addresses 2018-07-05 19:26:12 +10:00
Rob Harrington
c71a5ec0df Update subscription form to use new card validations for Stripe payment method 2018-07-05 19:26:11 +10:00
Rob Harrington
a03dd1e10c Serialize default card auth and presence for Customers 2018-07-05 19:26:11 +10:00
Rob Harrington
21c24eb69b Validate presence and auth of default card for customer 2018-07-05 19:26:11 +10:00
Rob Harrington
cf8ca1f8c1 Add show action to Admin::CustomersController 2018-07-05 19:26:11 +10:00
Rob Harrington
45895e9924 Use the user's default card to pay for subcriptions 2018-07-05 19:26:11 +10:00
Rob Harrington
fc2844a3d5 Add default_card method to user model 2018-07-05 19:26:11 +10:00
Maikel Linke
c7f7e420ea Skip shipment creation for payment step
https://github.com/openfoodfoundation/openfoodnetwork/issues/2007

Spree 2.0.4 creates in-memory shipments for the payment step. That means
we don't need to create a shipment in that transition. This change
copies the checkout_flow from the Spree code, but leaves one last
customisation: removal of the confirm step.
75ec77dc31
2018-07-05 16:34: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
82e3016a26 Add comment to StripeGateway wrapper methods indicating that they are named by Spree 2018-07-03 14:21:58 +10:00
Rob Harrington
2da6234362 Add spec for StripeGateway#refund 2018-07-03 14:21:58 +10:00
Rob Harrington
c496d0f14d Allow credit owed on payments made via stripe to be refunded via the admin section 2018-07-03 14:21:58 +10:00
Rob Harrington
108c4a7abb Add GETTING_STARTED.md and update README.md 2018-06-28 22:11:33 +10:00
Maikel
687612dba8 Merge pull request #2403 from luisramos0/hide-stripe-postcode
Hide postcode - not necessary as passed from billing address and wrec…
2018-06-28 08:55:42 +10:00
Maikel Linke
b7de80dd7f Remove unused count_on_hand setting from spec
This spec doesn't need to set the product's `count_on_hand`. The product
comes with a count of 3, but what matters is the count of variants.
2018-06-27 11:41:55 +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
Maikel
eb9064f5be Merge pull request #2383 from frank-west-iii/issue-2271-prepend-load
Fix NoMethodError in order cycles index
2018-06-27 09:12:18 +10:00
Maikel
f5346289c7 Merge pull request #2388 from Matt-Yorkley/uk/pi_available_on
Add available_on notes to PI guide
2018-06-26 17:58:39 +10:00
Maikel
3f334855d1 Merge pull request #2360 from oeoeaio/faster-stats
Rewrite user stat query for improved performance of homepage
2018-06-26 17:58:23 +10:00
Maikel
e9fad741e6 Merge pull request #2387 from Matt-Yorkley/embedded_referrers
Embedded response headers
2018-06-26 17:57:48 +10:00
Rob Harrington
ddb9ae1140 Load all shops that a user is associated with as a customer
Regardless of the presence of an order
2018-06-24 16:28:47 +10:00
Pau Perez
7707df354b Merge branch 'master' into 2-0-stable
* master: (206 commits)
  embedded groups layout changes
  embedded groups initial test
  Allow html requests for OrderCycleController#update
  Move applicator calls to OrderCycleForm
  Refactor OrderCycleForm to make logic clearer
  Extract schedule syncing logic into OrderCycleForm
  Add basic specs for OrderCyclesController#create
  Add basic OrderCycleForm to handle create/update logic
  Remove unnecessary respond_to blocks from OrderCyclesController
  Include admin users as managers on new enterprises
  Remove obsolete goWithoutHashFragments
  Simplify Navigation.go, not preserving hash fragments
  Only show change warning for open order cycles
  Use a SubscriptionsCount query object to provide counts to IndexOrderCycleSerializer
  Preload subscription counts for serialization in order cycle collection actions
  Request the subscription count for change warning each time, don't cache
  Ask user to confirm oc date change for open order cycles with subsciptions
  Fix ordering of Gemfile.lock
  Add rack-rewrite to handle redirects
  Renames product bulk edit action to index
  ...
2018-06-22 13:23:18 +02:00
luisramos0
0d9b03b066 Hide postcode - not necessary as passed from billing address and wrecks mobile UX 2018-06-22 11:42:50 +01:00
Rob Harrington
5e6291bce3 Don't request customers if list is already populated 2018-06-22 15:39:47 +10:00
Rob Harrington
d1d9c5a092 Add help button to saved cards list on account page
Describes the purpose of the default card
2018-06-22 15:39:47 +10:00
Rob Harrington
7db7084008 Use help-modal to display help text for authorised shops
Also updated the text slightly to make it more clear when the purpose of authorised shops are
2018-06-22 15:39:47 +10:00
Rob Harrington
32622c77bc Add basic help modal directive
Useful for showing help text that is too long for a tool tip
2018-06-22 15:39:47 +10:00
Rob Harrington
6457a17fde Add basic view allowing customers to authorise shop use of their credit cards 2018-06-22 15:39:47 +10:00
Rob Harrington
ffa8a8c7d6 Create Api::BaseController to allow use of ActiveModelSerializers
Also add index action to Api::CustomersController
2018-06-22 15:39:47 +10:00
Rob Harrington
29922d4be9 Add allow_charges field to Customer model 2018-06-22 15:39:46 +10:00
Rob Harrington
6e76fd8164 Add Api::CustomersController with update action 2018-06-22 15:39:46 +10:00
Rob Harrington
e25574790b Split out float: right css from .help-btn.tiny selector 2018-06-22 15:39:46 +10:00
Keir Osborn
bd7e072938 embedded groups layout changes 2018-06-22 14:03:00 +10:00
Keir Osborn
f626a21c5e embedded groups initial test 2018-06-22 14:03:00 +10:00
Buildkite
964059f25b Merge remote-tracking branch 'origin/master' into HEAD 2018-06-22 02:41:15 +00:00
Buildkite
57dbf2e770 Merge remote-tracking branch 'origin/master' into HEAD 2018-06-22 00:59:28 +00:00
Rob Harrington
cf9f8edcce Allow html requests for OrderCycleController#update
This is still used from the Advanced Settings page, to update the order_cycle
2018-06-22 09:46:08 +10:00
Rob Harrington
25525ae30b Move applicator calls to OrderCycleForm 2018-06-22 09:46:08 +10:00
Rob Harrington
f88f4a5791 Refactor OrderCycleForm to make logic clearer 2018-06-22 09:46:08 +10:00
Rob Harrington
d9830749f1 Extract schedule syncing logic into OrderCycleForm 2018-06-22 09:46:08 +10:00
Rob Harrington
21bd9d2e10 Add basic specs for OrderCyclesController#create 2018-06-22 09:46:08 +10:00
Rob Harrington
ab9c06837b Add basic OrderCycleForm to handle create/update logic 2018-06-22 09:46:08 +10:00
Rob Harrington
3f5b6be5b6 Remove unnecessary respond_to blocks from OrderCyclesController 2018-06-22 09:46:08 +10:00
Matt-Yorkley
172fa168ea Change layout attribute to method with question mark 2018-06-21 15:19:40 +01:00
Matt-Yorkley
aaba6da162 Add available_on notes to PI guide 2018-06-21 14:20:59 +10:00
Matt-Yorkley
d9623176fb Include admin users as managers on new enterprises 2018-06-21 13:21:08 +10:00
Maikel Linke
d510df5236 Remove obsolete goWithoutHashFragments
It was introduced, because `Navigation.go` perserved hash fragments. We
actually don't need that behaviour and it has been corrected.

`goWithoutHashFragments` also didn't deal with absolute URLs. And it used
`location.origin` which is not supported by Internet Explorer. That is
fixed by our use of Modernizr though.
2018-06-21 10:29:32 +10:00
Maikel Linke
fb02bdd25a Simplify Navigation.go, not preserving hash fragments
I looked through the history and it looks like this function was a bit
flawed (preserving hash fragments) from the beginning. It has been
patched a few times without addressing the underlying issue that we want
more than just replacing the pathname. We want to go somewhere else.
2018-06-21 10:29:32 +10:00
Pau Pérez Fabregat
6cf09c936b Merge pull request #2345 from luisramos0/do-not-upcase-state
removed uppercase from state on shops and producers lists in the frontoffice
2018-06-20 21:30:10 +02:00
Matt-Yorkley
6e81871459 Specs for new EmbeddedPageService 2018-06-20 15:14:56 +01:00
Maikel
3399eba428 Merge pull request #2367 from frank-west-iii/issue-2297-edit-product-cancel
Move product bulk edit to product index route
2018-06-20 17:53:57 +10:00
Rob Harrington
a29a1bd047 Only show change warning for open order cycles 2018-06-20 16:28:36 +10:00
Rob Harrington
7af11da901 Use a SubscriptionsCount query object to provide counts to IndexOrderCycleSerializer 2018-06-20 13:06:06 +10:00
Rob Harrington
d5b1041481 Preload subscription counts for serialization in order cycle collection actions 2018-06-20 13:06:06 +10:00
Rob Harrington
8770122eae Request the subscription count for change warning each time, don't cache 2018-06-20 13:06:05 +10:00
Rob Harrington
86d7453d26 Ask user to confirm oc date change for open order cycles with subsciptions 2018-06-20 13:06:05 +10:00
Maikel Linke
bbe21b7804 Merge branch 'master' of github.com:openfoodfoundation/openfoodnetwork into issue-2297-edit-product-cancel 2018-06-20 10:31:17 +10:00
Matt-Yorkley
ff0e0d9f3d Move logic from ApplicationController to service and improve clarity 2018-06-20 01:28:35 +01:00
Matt-Yorkley
e73b378201 Adjust embedded response headers 2018-06-20 01:28:35 +01:00
luisramos0
b8f1571282 added directive to make links open in new tab by default in textangular text areas in enterprise description, enterprise group description and in shopfront open and closed messages 2018-06-19 16:53:21 +01:00
Pau Pérez Fabregat
8da8a5a086 Merge pull request #2392 from openfoodfoundation/transifex
Transifex
2018-06-19 13:37:38 +02:00
Pau Pérez Fabregat
20c25cd030 Merge pull request #2368 from Matt-Yorkley/uk/admin_orders
Uk/admin orders
2018-06-19 11:00:35 +02:00
Frank West
3821b9e0da Fix ordering of Gemfile.lock
When we run bundle the gems are being reordered to be alphabetical.

Seems to have been committed on 26/05/2018 here:

7a64ad1cc1
2018-06-19 17:51:24 +10:00
Frank West
f7848b025f Add rack-rewrite to handle redirects
We are moving bulk edit to a different route and we want to be able to
handle redirects on this route. Handling this at the rack level before
the rails stack is the most performant way outside of rewrites on the
web server itself.
2018-06-19 17:51:23 +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 Pérez Fabregat
3484996dbd Merge pull request #2335 from luisramos0/issue2334
Fixed missing translations on shops filter - delivery option
2018-06-19 09:34:13 +02:00
Pau Pérez Fabregat
236920d28f Merge pull request #2357 from luisramos0/enterprises_country_state
changed the country and state selectors to angular on enterprises admin
2018-06-19 09:30:24 +02:00
Pau Pérez Fabregat
b1bccb07f2 Merge pull request #2369 from coopdevs/product-import-for-superadmins-only
Show product import's UI only to superadmins
2018-06-19 09:23:58 +02:00
Transifex-Openfoodnetwork
55e619af8d Updating translations for config/locales/de_DE.yml 2018-06-19 10:59:37 +10:00
Rob Harrington
dabef16606 Use ofn-select2 directive for country and state selectors on enterprise forms 2018-06-19 10:34:02 +10:00
luisramos0
d1019fcc5e changed the country and state selectors to angular on enterprises admin (new and edit screens) so that states are dynamically updated when country is changed 2018-06-19 10:34:02 +10:00
Maikel
2bfb635bcc Merge pull request #2341 from luisramos0/checkout_country_state
fixed country_state selectors on checkout
2018-06-19 09:34:21 +10:00
Transifex-Openfoodnetwork
fe39d96e7f Updating translations for config/locales/fr_CA.yml 2018-06-19 05:48:59 +10:00
Frank West
f2e1caabff Fix NoMethodError in order cycles index
When a user's session has timed out and they try to load new data on the
order cycles page by changing filters, the application throws a
`NoMethodError` because we are prepending the load data method before
checking the user's session.

We can fix this by removing the prepend on this action.
2018-06-18 06:36:55 -07:00
Maikel
f272a7b604 Merge pull request #2361 from mkllnk/2356-report-search-hint
2356 report search hint
2018-06-18 14:51:48 +10:00
luisramos0
ea9ea83fee improved checkout country and state selectors code 2018-06-18 14:50:03 +10:00
luisramos0
3cb0b76d21 fixed checkout tests by replacing state abbr with name in address selector boxes 2018-06-18 14:50:03 +10:00
luisramos0
836a5836d9 fixed country_state selectors on checkout 2018-06-18 14:50:03 +10:00
Maikel Linke
b7770510a7 Use CSS for layout 2018-06-18 11:08:58 +10:00
Maikel Linke
67c2574b0b Show report search instructions
Solves: https://github.com/openfoodfoundation/openfoodnetwork/issues/2356
2018-06-18 11:08:58 +10:00
Maikel Linke
7a2218fe26 Style the reports controller 2018-06-18 11:08:58 +10:00
Maikel Linke
6243640bca Unify sales tax report rendering with others 2018-06-18 11:08:58 +10:00
Maikel Linke
66567fd9e6 Unify report table rendering
There is a lot of code duplication in the report views and we would like
to change that code. So we move it into one file first.
2018-06-18 11:08:58 +10:00
Maikel
86ff24b43c Merge pull request #2386 from frank-west-iii/fix-ssl-errors-specs
Set the SSL protocol for secure connections
2018-06-18 08:45:31 +10:00
Frank West
0d7352813c Set the SSL protocol for secure connections
There are ssl errors when using stripe through phantom js. This allows
other SSL protocols now.
2018-06-15 11:43:26 -07:00
Rob H
61f303ced2 Merge pull request #2373 from oeoeaio/fix-import-date-filter
Reimplement import date filter as an actual Filter
2018-06-15 16:53:22 +10:00
Rob Harrington
d0f8e9fba6 Reimplement import date filter as an actual Filter 2018-06-15 11:31:47 +10:00
Maikel
46f5f5061a Merge pull request #2377 from mkllnk/2376-fix-paypal-redirects
Pass on redirect path instead of URL
2018-06-15 10:16:31 +10:00
Maikel Linke
561a73e911 Pass on redirect path instead of URL
Fixes https://github.com/openfoodfoundation/openfoodnetwork/issues/2376

The checkout doesn't deal with absolute URLs since
fc2cc09ea5.
2018-06-14 16:49:52 +10:00
Pau Pérez Fabregat
24c6b940f6 Merge pull request #2370 from openfoodfoundation/transifex
Transifex
2018-06-13 12:03:34 +02:00
Pau Pérez Fabregat
d5310eed6c Merge pull request #2371 from HugsDaniel/2359_js_libs_not_found_or_not_defined
Changed require syntax to fit jquery-ui-rails v<5.0
2018-06-13 09:12:57 +02:00
Rob Harrington
c72a2fda91 Use placed_at state to determine whether to remove orphaned proxy orders 2018-06-13 13:46:11 +10:00
Rob Harrington
d9ddad554e Prevent proxy_orders for active or complete order cycles from being removed automatically by ProxyOrderSyncer 2018-06-13 13:46:11 +10:00
Rob Harrington
ac309ffaf5 Rename obsolete_proxy_orders to orphaned_proxy_orders 2018-06-13 13:46:11 +10:00
Maikel
51bbf64b10 Merge pull request #2363 from oeoeaio/update-contributors
Update contributors list in the README
2018-06-13 11:11:29 +10:00
Hugo Daniel
6e2966d7e8 Changed require syntax to fit jquery < 5.0 2018-06-12 15:59:41 +02:00
Matt-Yorkley
ea0d24a5bf Re-word test names for clarity 2018-06-12 13:20:00 +01:00
Transifex-Openfoodnetwork
644c2e8788 Updating translations for config/locales/nb.yml 2018-06-12 20:33:43 +10:00
Transifex-Openfoodnetwork
03fb5e7ccf Updating translations for config/locales/fr.yml 2018-06-12 20:03:03 +10:00
Transifex-Openfoodnetwork
6908635822 Updating translations for config/locales/pt.yml 2018-06-12 19:36:28 +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
56040685a0 Add Matt, Pau and Enrico to the contributors list on the README 2018-06-10 18:26:50 +10:00
Matt-Yorkley
c7f7541e2d Admin order customer details spec 2018-06-10 02:32:59 +01:00
Matt-Yorkley
d90e362e6f Remove guest checkout radio buttons from admin order view 2018-06-09 02:43:42 +01:00
Matt-Yorkley
7bef474efd Admin Order guest checkout status 2018-06-09 02:43:42 +01:00
Pau Pérez Fabregat
4c9dd4e8a1 Merge pull request #2349 from robotscissors/issue-2278-add-missing-image
Add image back into server for background
2018-06-08 19:12:01 +02:00
luisramos0
9e0732ceae removed uppercase from state on shops and producers lists in the frontoffice 2018-06-08 14:11:53 +01:00
Pau Pérez Fabregat
bb3ae976c6 Merge pull request #2364 from coopdevs/update-template
Ask devs to tell whether we should test on mobile
2018-06-08 14:37:16 +02:00
Pau Perez
fed60cf961 Ask devs to tell whether we should test on mobile 2018-06-08 10:01:04 +02:00
Pau Pérez Fabregat
b77091f87d Merge pull request #1969 from coopdevs/feature/do-not-upcase-state-abbr
Do not upcase State abbreviation
2018-06-08 08:36:55 +02:00
Rob Harrington
5cbc4cbf30 Use scoped keys for table headers in saved card partial 2018-06-08 15:30:08 +10:00
Rob Harrington
18c211e97c Ensure that savedCreditCards always exists 2018-06-08 15:30:08 +10:00
Rob Harrington
6a202d9446 Use more descriptive name for after_save callback method: :ensure_single_default_card 2018-06-08 15:30:08 +10:00
Rob Harrington
5dbf98f39b Use exists? method to avoid unnecesary loading of credit card array 2018-06-08 15:30:07 +10:00
Rob Harrington
05e4d9007e Update card spec to make the initial roles of cards clearer 2018-06-08 15:30:07 +10:00
Rob Harrington
254f0db97c Automatically select the customer's default card in the checkout 2018-06-08 15:30:07 +10:00
Rob Harrington
e88e963b4c Alter cards interface to allow updating of default card 2018-06-08 15:30:07 +10:00
Rob Harrington
1327b9dc2c Add update method to CreditCardsController 2018-06-08 15:30:07 +10: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
robotscissors
5c25e85d92 Create dark background on load 2018-06-07 21:53:17 -07:00
Rob Harrington
3619ec0dc8 Add is_default attribute to Spree::CreditCard model 2018-06-08 12:01:10 +10:00
Maikel
0befc714ce Merge pull request #2358 from coopdevs/revert-current-order-argument
Spree 2.0: Fix GET "/"
2018-06-07 10:45:06 +10:00
Pau Pérez Fabregat
d4e0d14fe1 Merge pull request #2342 from openfoodfoundation/transifex
Transifex
2018-06-06 09:05:29 +02:00
Rob Harrington
4fa09639cb Rewrite user stat query for improved performance of homepage 2018-06-06 16:27:23 +10:00
Pau Pérez Fabregat
7ff7fe4891 Merge pull request #2122 from oeoeaio/subs-unplaced-fees
Subs: prevent fees from displaying in email when subscription order cannot be fulfilled
2018-06-06 07:57:18 +02:00
Maikel
9d2c1976e0 Merge pull request #2343 from mkllnk/2212-remove-report-default-filters
2212 remove report default filters
2018-06-06 12:19:47 +10:00
Pau Perez
daf12d1300 Revert "Refactor Order#current_order argument"
This reverts commit ae935202be.
2018-06-05 18:42:41 +02:00
Pau Perez
89c2733f50 Revert "Removing redundant curly braces"
This reverts commit 03173d4f7b.
2018-06-05 18:42:31 +02:00
Pau Perez
32069cffe1 Revert "Removing useless spaces"
This reverts commit d81b6be259.
2018-06-05 18:42:19 +02:00
Maikel
494aeb9a14 Merge pull request #2348 from oeoeaio/fix-tabs
Provide specific tab widths for shop tabs when screen width > medium
2018-06-05 15:27:40 +10:00
Pau Pérez Fabregat
3283c5158b Merge pull request #1492 from Matt-Yorkley/uk/import2
Uk/import2
2018-06-04 09:56:36 +02:00
Pau Pérez Fabregat
cf77bb439a Merge pull request #2337 from Matt-Yorkley/uk/modal_fix
Fix guest checkout login modal
2018-06-04 09:56:00 +02:00
Pau Pérez Fabregat
ed116867d4 Merge pull request #2322 from luisramos0/issue1913
Fixed issue #1913 with expand/collapse of list of producers of a shop
2018-06-04 09:55:40 +02:00
Rob Harrington
fed0a81159 Add an optional link to Skylight dashboard to footer 2018-06-02 11:55:28 +10:00
Rob Harrington
e3ea60fda5 Process proxy orders even if underlying subscription has been paused or cancelled 2018-06-01 16:57:56 +10:00
robotscissors
65e13c2a2d add image back into server for background 2018-05-30 20:42:31 -07:00
Rob Harrington
8201da9fab Prodide specific tab widths for shop tabs when screen width > medium 2018-05-30 17:05:31 +10:00
Rob Harrington
184bf9ce36 Allow super admin users to enable subscriptions for enterprises 2018-05-30 09:42:03 +10:00
Rob Harrington
16211da5f6 Reimplement tabs on shopfront using our custom tab directive 2018-05-30 08:35:21 +10:00
Maikel
cb19643b3a Merge pull request #2332 from oeoeaio/1938-oc-switch
Correct 'Next Order Closing' text in shopfront when switching OCs
2018-05-30 08:28:23 +10:00
Maikel
cee2f76406 Merge pull request #2299 from frank-west-iii/issue-1832-phone-shopfront
Add phone number to shopfront contact info
2018-05-30 08:27:07 +10:00
Maikel
32ef507221 Merge pull request #2318 from luisramos0/issue2307
Fixed broken translation keys in "new order cycle" screen
2018-05-29 17:38:04 +10:00
Maikel
603c88a93c Merge pull request #2317 from luisramos0/issue2308
Added missing translation key for no results in admin orders page
2018-05-29 17:37:26 +10:00
Maikel
307132d1f7 Merge pull request #2298 from frank-west-iii/issue-953-ent-description-formatting
Fix enterprise description display formatting
2018-05-29 17:36:47 +10:00
Maikel Linke
e6ef43c91d Give a spec some style 2018-05-29 16:55:30 +10:00
Maikel Linke
54bdcf7679 Convert specs to RSpec 3.7.0 syntax with Transpec
This conversion is done by Transpec 3.3.0 with the following command:
    transpec spec/lib/open_food_network/xero_invoices_report_spec.rb

* 15 conversions
    from: obj.stub(:message)
      to: allow(obj).to receive(:message)

* 10 conversions
    from: obj.should
      to: expect(obj).to

* 4 conversions
    from: == expected
      to: eq(expected)

* 3 conversions
    from: obj.should_not
      to: expect(obj).not_to

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2018-05-29 16:53:18 +10:00
Maikel Linke
72ae6f2af6 Add spec helper to make spec run on its own 2018-05-29 16:49:00 +10:00
Maikel Linke
02c4795640 Remove default dates from reports
Closes https://github.com/openfoodfoundation/openfoodnetwork/issues/2212
2018-05-29 16:47:23 +10:00
Transifex-Openfoodnetwork
6d450aeae2 Updating translations for config/locales/pt.yml 2018-05-29 14:53:01 +10:00
Transifex-Openfoodnetwork
d1e9d52acd Updating translations for config/locales/fr.yml 2018-05-29 14:51:07 +10:00
Matt-Yorkley
b440d05205 Tidy up unnecessary PI code 2018-05-26 19:34:20 +01:00
Matt-Yorkley
a4a2bc438a Import settings spec 2018-05-26 19:34:20 +01:00
Matt-Yorkley
a503b5e2d0 Add not_master scope to Spree::Variant 2018-05-26 19:34:20 +01:00
Matt-Yorkley
91521dc2b0 Improve import_date queries 2018-05-26 19:34:20 +01:00
Matt-Yorkley
6f6db9384f Tidy up SCSS and coffeescript 2018-05-26 19:34:20 +01:00
Matt-Yorkley
d9c720e89a Tidy up import_date 2018-05-26 19:34:20 +01:00
Matt-Yorkley
73f7bc3db0 Remove use of before_filter 2018-05-26 19:34:20 +01:00
Matt-Yorkley
e65bdf35fa Change wording on default import settings text 2018-05-26 19:34:20 +01:00
Matt-Yorkley
c5b7cec19f Change checkbox confirmation behaviour 2018-05-26 19:34:20 +01:00
Matt-Yorkley
58e9f0266a User guide check 2018-05-26 19:34:20 +01:00
Matt-Yorkley
b42e3eb2c9 Product Import Guide WIP 2018-05-26 19:34:20 +01:00
Matt-Yorkley
7da97be7d2 Create separate angular module 2018-05-26 19:34:20 +01:00
Matt-Yorkley
c2c42e1d9a Product Import refactor 2018-05-26 19:34:20 +01:00
Matt-Yorkley
11908f125e Fix flaky spec 2018-05-26 19:34:20 +01:00
Matt-Yorkley
1ed49d397e Refactor PI 2018-05-26 19:34:20 +01:00
Matt-Yorkley
1ff39b8df5 Fix altered translation key 2018-05-26 19:34:20 +01:00
Matt-Yorkley
7a64ad1cc1 Fix roo-xls version in Gemfile 2018-05-26 19:34:20 +01:00
Matt-Yorkley
3a6f316ede Codeclimate refactor 2018-05-26 19:34:20 +01:00
Matt-Yorkley
7c283d90db Spec adjustments 2018-05-26 19:34:19 +01:00
Matt-Yorkley
1c34ce6162 PI exception handling 2018-05-26 19:34:19 +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
678a2a365d Fix spec date to string issue 2018-05-26 19:34:19 +01:00
Matt-Yorkley
2ef63efe28 Tax and Shipping adjustments 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
02661d5c23 PI unit_value typecasting 2018-05-26 19:34:19 +01:00
Matt-Yorkley
e848957712 Clean up PI controller
Remove assignment

Tweak
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
3a650dd8b3 Add roo-xls gem for Excel support 2018-05-26 19:34:19 +01:00
Matt-Yorkley
684b493fb3 PI translations 2018-05-26 19:34:19 +01:00
Matt-Yorkley
6e2de0d6ac PI refactoring 2018-05-26 19:34:19 +01:00
Matt-Yorkley
e76a818fde Update PI spec 2018-05-26 19:34:19 +01:00
Matt-Yorkley
ffbb67d480 PI inventories additions 2018-05-26 19:34:19 +01:00
Matt-Yorkley
4e97445655 PI inventories timestamps 2018-05-26 19:34:19 +01:00
Matt-Yorkley
a2a65a8900 PI inventories and overhaul 2018-05-26 19:34:19 +01:00
Matt-Yorkley
e362c2d867 PI timestamps 2018-05-26 19:34:19 +01:00
Matt-Yorkley
fc2cc09ea5 checkout redirect excludes angular path variables 2018-05-26 18:13:35 +01:00
luisramos0
533ae77234 Fixed missing translations on shops filter - delivery option 2018-05-25 23:46:44 +01:00
Pau Pérez Fabregat
e04141d797 Merge pull request #2291 from coopdevs/remove-producers-tab-from-dashboard
Remove producers tab from dashboard
2018-05-25 19:24:29 +02:00
Rob Harrington
17259b3269 Overwrite cached value for current_order_cycle when updating it
This ensures that the correct order cycle is rendered in the json response
2018-05-25 17:28:54 +10:00
Pau Pérez Fabregat
9d57beb33f Merge pull request #2305 from Matt-Yorkley/uk/domain_headers
Ensure domain in SSL header matches request with or without www prefix
2018-05-23 20:08:56 +02:00
luisramos0
d821664ee3 Fixed issue #1913 with expand/collapse of list of producers of a shop 2018-05-23 17:32:38 +01:00
luisramos0
a59d9cb670 Fixed broken translation keys in new order cycle screen 2018-05-23 13:12:56 +01:00
Luis Ramos
12232f552c Added missing translation key for no results in admin orders page 2018-05-22 21:00:03 +01:00
Pau Perez
2a3772dba0 Do not show icons for producer-enterprises
Payment and shipping methods don't apply to them.
2018-05-22 16:50:27 +02:00
Pau Perez
208e3bbadd Ensure non-distributors are listed in dashboard
We want to show all enterprises in a single list regardless of their
type.
2018-05-22 10:21:35 +02:00
Pau Perez
bd34f27ace Inline partials into enterprises view
Now there are no tabs in the dashboard so is pointless to refer to them
and to split in multiple partials.
2018-05-22 10:21:35 +02:00
Pau Perez
889199a525 Refactor Overview Controller to make it more clear
Assigns meaningful names to the boolean conditions to make it easier
to understand, breaks down the big and nested if/else and converts the
specs to RSpec 3.

Note the check `!spree_current_user.admin?` has been removed because
in admin/base_controller_decorator.rb `#authorize_admin` is already
called.
2018-05-22 10:21:35 +02:00
Pau Perez
51f3542a92 Remove no longer used Angular controller
There are no tabs to keep track of now.
2018-05-22 10:21:35 +02:00
Pau Perez
5a182e8e88 Remove enterprises producers tab from dashboard 2018-05-22 10:21:35 +02:00
Matt-Yorkley
c2934d3570 Ensure domain in SSL header matches request with or without www prefix 2018-05-21 17:50:34 +01:00
Frank West
f995a04ebf Add phone number to shopfront contact info 2018-05-18 14:05:28 -07:00
Frank West
b05b9747b8 Fix enterprise description display formatting
Removes `text-small` class from container and change container to `div`
instead of `p` for semantic differentiation.
2018-05-18 07:20:56 -07:00
Maikel Linke
d218a51d96 Test public instead of private method
Refactoring and styling the whole thing, possibly causing conflicts with
other pull requests.
2018-05-18 11:27:48 +10:00
Maikel Linke
57dd984512 Convert specs to RSpec 3.7.0 syntax with Transpec
This conversion is done by Transpec 3.3.0 with the following command:
    transpec spec/lib/open_food_network/order_and_distributor_report_spec.rb

* 2 conversions
    from: == expected
      to: eq(expected)

* 2 conversions
    from: obj.should
      to: expect(obj).to

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2018-05-18 11:27:48 +10:00
Maikel Linke
7f8f935017 Shorten module referencing 2018-05-18 11:27:48 +10:00
Maikel Linke
0fa9ca653e Move duplicate code into its own module 2018-05-18 11:27:48 +10:00
Maikel Linke
40b0a0bd5a Determine searching state by params, not request
We may want to use GET for searching or POST to display a certain report
type.
2018-05-18 11:27:48 +10:00
Maikel Linke
8a1a540f3d Clarify creating objects for test context 2018-05-18 11:27:48 +10:00
Maikel Linke
acee5da31b Remove unnecessary whitespace 2018-05-18 11:27:48 +10:00
Maikel Linke
8a4457e8e4 Give better names 2018-05-18 11:27:48 +10:00
Maikel Linke
63799b2cb1 Remove outdated comment 2018-05-18 11:27:48 +10:00
Maikel Linke
8e2aee71da Compile Order Cycle Management only on search 2018-05-18 11:27:48 +10:00
Maikel Linke
7a546087b2 Compile Packing report data only on search 2018-05-18 11:27:47 +10:00
Maikel Linke
1e80487afc Compile Order And Distributors only on search
And move most logic into the report class like the others.
2018-05-18 11:27:47 +10:00
Maikel Linke
53436024e2 Compile Orders & Fulfillment report only on search 2018-05-18 11:27:47 +10:00
Maikel Linke
feb33c3ca5 Compile Payments report only on search 2018-05-18 11:27:47 +10:00
Maikel Linke
bf74282e5f Compile Bulk Co-Op report only on search 2018-05-18 11:27:47 +10:00
Maikel Linke
5f9d239f19 Compile Products & Inventory report only on search 2018-05-18 11:27:47 +10:00
Maikel Linke
d464216027 Don't compile Sales Tax report data before search 2018-05-18 11:27:47 +10:00
Maikel Linke
983e128d90 Half test run time by loading less data
On my computer it took 3 seconds to load all four orders with all the
attached order cycles and enterprises.

Runtime before: 56.38 seconds
Runtime after:  25.14 seconds

This really speeds up developing reports.
2018-05-18 11:27:47 +10:00
Maikel Linke
b8ca37e9d2 Don't compile xero report data before search 2018-05-18 11:27:47 +10:00
Maikel Linke
14e7cdd138 Don't compile customers report data before search
Distributors, suppliers and order cycles are still loaded for the search
form.
2018-05-18 11:27:47 +10:00
Maikel Linke
8393b1d4c0 Don't compile user-enterprises report before search 2018-05-18 11:27:47 +10:00
Maikel Linke
fcd41c67fa Add logic for showing empty reports initially 2018-05-18 11:27:47 +10:00
Maikel Linke
031c4d417e Simplify report rendering 2018-05-18 11:27:47 +10:00
Maikel Linke
41bb5e4e96 Unify report rendering 2018-05-18 11:27:47 +10:00
Maikel Linke
28d66ad3e0 Activate dormant specs
It looks like a typo prevented a bunch of specs from being run.
2018-05-18 11:27:47 +10:00
Maikel Linke
5aef7031d2 Convert specs to RSpec 3.7.0 syntax with Transpec
This conversion is done by Transpec 3.3.0 with the following command:
    transpec spec/features/admin/reports_spec.rb

* 40 conversions
    from: obj.should
      to: expect(obj).to

* 10 conversions
    from: == expected
      to: eq(expected)

* 3 conversions
    from: obj.should_not
      to: expect(obj).not_to

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2018-05-18 11:27:46 +10:00
Maikel Linke
682b92e617 Avoid deprication warning for using stub 2018-05-18 11:27:46 +10:00
Maikel Linke
99a6afd9cd Convert specs to RSpec 3.7.0 syntax with Transpec
This conversion is done by Transpec 3.3.0 with the following command:
    transpec spec/controllers/spree/admin/reports_controller_spec.rb

* 20 conversions
    from: obj.should
      to: expect(obj).to

* 14 conversions
    from: obj.should_not
      to: expect(obj).not_to

* 5 conversions
    from: == expected
      to: eq(expected)

* 4 conversions
    from: obj.stub(:message)
      to: allow(obj).to receive(:message)

* 2 conversions
    from: obj.should_receive(:message)
      to: expect(obj).to receive(:message)

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2018-05-18 11:27:46 +10:00
Maikel Linke
f3d542a3ec Fix style and spelling 2018-05-18 11:27:46 +10:00
Maikel Linke
36b5f0eea7 Render only displayed report options 2018-05-18 11:27:46 +10:00
Maikel Linke
742e9d2a5f Remove more code duplication 2018-05-18 11:27:46 +10:00
Maikel Linke
6a52ca8113 Remove code duplication 2018-05-18 11:27:46 +10:00
Maikel
4df9a0afa2 Merge pull request #2272 from rtrunkhill/620-error-message-tweak
changed error message in en.yml line 2207
2018-05-18 11:19:45 +10:00
Maikel
48b9536621 Merge pull request #2268 from stveep/1213-back-empties-cart
Set response headers to disable cache - to avoid back button emptying…
2018-05-18 10:54:05 +10:00
stveep
6efc0ab802 Set response headers to disable cache - to avoid back button emptying cart (#1213) 2018-05-18 09:57:32 +10:00
Maikel
b15f4de921 Merge pull request #2270 from mkllnk/2265-update-active-merchant
Update activemerchant to v1.78 with new root cert
2018-05-18 09:54:15 +10:00
Rory Trunkhill
5706cecf26 modify enterprise eror name message #620 2018-05-17 18:10:35 +00:00
Pau Pérez Fabregat
e356d712c4 Merge pull request #2288 from frank-west-iii/issue-2182-confirm-first-user
Confirm first user when seeding database
2018-05-16 08:51:12 +02:00
Pau Pérez Fabregat
5b89f6a159 Merge pull request #2285 from coopdevs/get-last-spree-fork-changes
Upgrade spree to point to 1c3dfc7fb
2018-05-16 08:42:41 +02:00
Maikel Linke
585bba0e23 Update activemerchant to v1.78 with new root cert
Fixes https://github.com/openfoodfoundation/openfoodnetwork/issues/2265.

Most changes are in gateways we don't use, I believe. There has been a
change in Stripe, but we use another implementation, I guess.
2018-05-15 16:48:03 +10:00
Pau Pérez Fabregat
a28fa441c5 Merge pull request #2282 from openfoodfoundation/transifex
Transifex
2018-05-15 08:24:39 +02:00
Maikel
1b371e6388 Merge pull request #2249 from mkllnk/upgrade-rubocop-config
Upgrade Rubocop config to be compatible with 0.55
2018-05-15 16:19:38 +10:00
Maikel Linke
7c68ac9d0c Wait for dialog to appear before using it
Travis was failing a few times. This should make the spec more robust.
2018-05-15 15:00:18 +10:00
Frank West
91351c3f78 Confirm first user when seeding database
Currently the first user is not confirmed until running the task
`openfoodnetwork:dev:load_sample_data`. This task does not need to be
run on a minimum implementation of a new server or development setup.

We now confirm the first user during seeding. This could be the default
email address or the user entered email address entered during seeding.
2018-05-14 15:30:04 -07:00
Pau Pérez Fabregat
6033981ad5 Merge pull request #2283 from coopdevs/remove-outdated-specs
Remove no longer valid tests
2018-05-14 13:22:00 +02:00
Pau Perez
6f8317b007 Upgrade spree to point to 1c3dfc7fb
This will fetch latest changes applied in the fork. It also changes the
Github organization we fetch it from. From now on we'll work there and
not in Coopdevs org.
2018-05-14 13:05:51 +02:00
Pau Perez
5c260dae51 Remove no longer valid tests
`#available_to_order?` is gone in Spree 2.0 and our customization on top
of it went away with #2256.
2018-05-14 12:30:11 +02:00
Pau Pérez Fabregat
1991a7f34d Merge pull request #2256 from coopdevs/add-custom-package
Add custom package
2018-05-14 10:44:05 +02:00
Buildkite
f2e07419a8 Merge remote-tracking branch 'origin/master' into HEAD 2018-05-11 03:37:13 +00:00
Matt-Yorkley
495f932069 Authentication service class description 2018-05-11 12:05:27 +10:00
Matt-Yorkley
74689afb8a Unregistered user checkout issue 2018-05-11 12:05:27 +10:00
Matt-Yorkley
d3344973b7 checkout_controller clarity 2018-05-11 12:05:27 +10:00
Matt-Yorkley
9841f27f92 Add missing key for devise message 2018-05-11 12:05:27 +10:00
Matt-Yorkley
0741b5fa58 Ensure checkout modal opens at correct height 2018-05-11 12:05:27 +10:00
Maikel Linke
45fc42723c Simplify query for existing email
It should be easier to read and more efficient now.
2018-05-11 12:05:27 +10:00
Maikel Linke
fe979b801f Improve readability by grouping depending logic 2018-05-11 12:05:27 +10:00
Matt-Yorkley
358edb4727 Disable guest checkout in model 2018-05-11 12:05:27 +10:00
Matt-Yorkley
6b2c4de20f Tidy up checkout spec 2018-05-11 12:05:27 +10:00
Matt-Yorkley
94b90b4a73 Registered user controller method spec 2018-05-11 12:05:27 +10:00
Matt-Yorkley
598677be3f Disable guest checkout for registered users 2018-05-11 12:05:26 +10:00
Daniel Dominguez
4551fa60c5 Lowercase tag when adding a tag to the array, as they are lowercased after at the database level,
there is no point to display them with uppercase letters on the view.
2018-05-11 11:16:58 +10:00
Maikel Linke
7caf166768 Updates pulled from Transifex 2018-05-10 09:42:34 +10:00
Transifex-Openfoodnetwork
48217a54b9 Updating translations for config/locales/es.yml 2018-05-09 22:58:59 +10:00
Maikel Linke
8a3244513f Run Codeclimate with new rubocop 2018-05-08 15:29:04 +10:00
Maikel Linke
fcb9d1411f Exclude file that rubocop fails to parse 2018-05-08 15:19:44 +10:00
Maikel Linke
21b96c63af Update cop naming 2018-05-08 14:52:13 +10:00
Maikel Linke
10d3abeaac Upgrade Rubocop to the latest version 2018-05-08 14:46:57 +10:00
Steven Lawson
fd3e0d885b Closes issue 1926, Changed package screen text from choose your starting point to choose your package 2018-05-07 17:15:55 -06:00
Pau Pérez Fabregat
98985d7211 Merge pull request #2266 from dan1d/upgrade-to-factory-bot
Switched gem FactoryGirl to FactoryBot as FactoryGirl is deprecated.
2018-05-07 15:22:12 +02: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
501ad8107d Merge pull request #2264 from coopdevs/exclude-js-libs-from-codeclimate
Exclude shared JS libs from CodeClimate
2018-05-03 16:53:45 +02:00
Pau Pérez Fabregat
8713bacfab Merge pull request #2260 from coopdevs/improve-report
Improve order_and_distributor report's readability
2018-05-03 16:52:16 +02:00
Pau Perez
dd14915209 Exclude shared JS libs from CodeClimate
CodeClimate is raising issues from code that we don't own and won't
touch thus, causing false negatives.
2018-05-03 13:56:19 +02:00
Pau Perez
776b5a23f6 Skip methods that distributor can't use in Package
This ensures that Spree's shipping methods take into account the ones
the order's distributor uses.

This reimplements what `#available_to_order_with_distributor_check?`
used to do and it doesn't work with Spree 2.0.4.
2018-05-02 13:58:25 +02:00
Pau Perez
5da9b55cdd Improve order_and_distributor report's readability 2018-05-02 12:26:42 +02:00
Pau Pérez Fabregat
21ebb5849c Merge pull request #2258 from mkllnk/2254-invite-manager-flow
Fix initial password setting
2018-05-02 08:48:36 +02:00
Pau Pérez Fabregat
b2301190af Merge pull request #2259 from mkllnk/remove-heroku
Remove Heroku references since nobody is using it
2018-05-02 08:43:51 +02:00
Maikel Linke
c597b3c377 Speed-up spec 2018-05-01 14:40:05 +10:00
Maikel Linke
7b06abd4c2 Fix initial password setting 2018-05-01 14:18:56 +10:00
Maikel Linke
de5124f90c Remove Heroku references since nobody is using it 2018-05-01 10:20:21 +10:00
Pau Perez
6784621c1b Remove invalid spree config
According to
5ef8dc67df
"Backorders can be configured now as per stock location or stock item".
2018-04-30 13:53:23 +02:00
Pau Perez
c3132e87d6 Rename and fix simple_product to base_product
This factory has been merged into the base_product factory. Besides,
products no longer have on_hand attribute.
2018-04-30 13:49:52 +02:00
Pau Pérez Fabregat
e7b1d933f4 Merge pull request #2253 from coopdevs/apply-spree-2.0-migrations
Apply spree 2.0 migrations
2018-04-30 12:51:29 +02:00
Pau Perez
19870eccdc Install and run Spree v2.0.4 migrations 2018-04-27 17:02:28 +02:00
Pau Pérez Fabregat
9840f3bb6b Merge pull request #2252 from coopdevs/use-patched-spree-2.0.4
Use OFN's Spree fork of 2.0.4 to get fixes
2018-04-27 16:58:33 +02:00
Pau Pérez Fabregat
d238aedb21 Merge pull request #2224 from coopdevs/minor-upgrade-rails
Upgrade Rails to 3.2.22.5 to get security fixes
2018-04-27 12:46:26 +02:00
Matt-Yorkley
a08b095547 Extract json render from :user_confirmed? method 2018-04-27 12:37:42 +10:00
Matt-Yorkley
1c57f0f241 Update :return_url value when re-sending email confirmations 2018-04-27 12:37:42 +10:00
Matt-Yorkley
1f23402912 Disable password reset for unconfirmed users 2018-04-27 12:37:42 +10:00
Matt-Yorkley
1782a8c700 manager invite permissions spec 2018-04-27 10:13:54 +10:00
Matt-Yorkley
b431a7417a Add cancan permissions for Admin::ManagerInvitationsController 2018-04-27 10:13:54 +10:00
Pau Perez
97e8adf7a7 Use OFN's Spree fork of 2.0.4 to get fixes
We encountered the bug that
3fd1535e75
fixes, which is needed to boot the app using Spree 2.0.4.

This stems from
https://github.com/openfoodfoundation/openfoodnetwork/issues/2236#issuecomment-384633612
2018-04-26 16:35:28 +02:00
Enrico Stano
6ae1780180 Merge pull request #2248 from coopdevs/upgrade-rubyzip
Update rubyzip to fix security issue
2018-04-26 14:50:10 +02:00
Pau Pérez Fabregat
1abf56efd5 Merge pull request #2246 from coopdevs/autofix-comment-indentation
Autofix comment indentation
2018-04-25 15:39:34 +02:00
Pau Perez
c12ac91371 Update rubyzip to fix security issue
Github reported us about CVE-2017-5946 which is a high severity issue.

This gem is used by Roo which already supports the Rubyzip version that
contains the fix (version 1.2.1). Check
872bb3a0b6
for further details.

Rubyzip's changelog for the version 1.2.1 can be found in
https://github.com/rubyzip/rubyzip/blob/master/Changelog.md#121.
2018-04-24 16:08:34 +02:00
Pau Perez
25ad9b22aa Update .rubocop_todo.yml 2018-04-23 13:03:05 +02:00
Pau Perez
11081ab1d6 Autocorrect Rubocop's Layout/CommentIndentation cop 2018-04-23 12:51:09 +02:00
Pau Pérez Fabregat
a1645477e0 Merge pull request #2235 from coopdevs/upgrade-to-spree-2.0.4
Upgrade Spree to 2.0.4 instead of 2.0.13
2018-04-23 12:14:49 +02:00
Maikel Linke
3fc49d5935 Simplify code 2018-04-23 12:55:49 +10:00
Matt-Yorkley
cd4268d219 Add manager dropdown UX 2018-04-23 12:55:49 +10:00
Rob Harrington
c77a01815c Copy datepicker directive to utils module
Ensures that datepicker is available for subscriptions
2018-04-23 11:05:22 +10:00
Pau Pérez Fabregat
386716088a Merge pull request #2190 from Matt-Yorkley/uk/bep_images_modal
Use angular translation filter on image upload modal
2018-04-20 16:22:53 +02:00
Pau Pérez Fabregat
9a75728b6e Merge pull request #2231 from coopdevs/add-image-for-wiki
Add image to be used in Spree upgrade wiki page
2018-04-20 09:26:17 +02:00
Pau Perez
58f3b5a97e Upgrade Spree to 2.0.4 instead of 2.0.13
Although we don't know how big the fixes introduced between 2.0.4 and
2.0.13 are, jumping from roughly 1.3.99 to 2.0.13 seems too big of
a change to do in one go.

Unless more issues like this one come up that force us to upgrade to
a newer version I believe it's best to be conservative. You'll find an
in-depth explanation in
https://github.com/openfoodfoundation/openfoodnetwork/wiki/Spree-2.0-upgrade#getting-to-version-204-

A previous effort was done to upgrade to v2.0.13 in
https://github.com/openfoodfoundation/openfoodnetwork/pull/2209
2018-04-18 08:56:03 +02:00
Pau Perez
ef3ef2d4f3 Upgrade Rails to 3.2.22.5 to get security fixes
This will fix reported vulnerabilities CVE-2015-7576, CVE-2016-2098
(reported as high severity), CVE-2016-0751 and CVE-2015-7577.
2018-04-17 20:56:51 +02:00
Pau Perez
cd9d13cb2a Add images to be used in Spree upgrade wiki page 2018-04-17 20:55:42 +02:00
Pau Pérez Fabregat
89bc9380eb Merge pull request #2232 from coopdevs/skip-feature-spec-until-fixed
Disable totally unreliable feature test
2018-04-17 20:54:20 +02:00
Pau Perez
9f06d1f809 Disable totally unreliable feature
We need to investigate why it fails so many times fix it and then enable it
back. As it is, it brings cons than pros preventing even PRs that don't
touch code from being merged.
2018-04-17 19:22:03 +02:00
Pau Pérez Fabregat
ac37b0fc7e Merge pull request #2221 from Matt-Yorkley/uk/bep_images_ux
Close modal when image updated successfully
2018-04-17 18:05:20 +02:00
Pau Perez
06ef2a4c63 Remove commented out gem from Gemfile 2018-04-17 16:10:41 +02:00
Hugo Daniel
595a622d5b Removing useless spaces 2018-04-17 16:10:41 +02:00
Hugo Daniel
d9f451b6fe Removing redundant curly braces 2018-04-17 16:10:41 +02:00
Hugo Daniel
abe5d3596c Refactor Order#current_order argument 2018-04-17 16:10:41 +02:00
Hugo Daniel
e6b58c6db4 Remove ssl deprecated configuration 2018-04-17 16:10:40 +02:00
Hugo Daniel
6f3663f1b9 update gemfile to spree 2.0.13 2018-04-17 16:10:40 +02: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 Pérez Fabregat
b1fc15f242 Merge pull request #2223 from openfoodfoundation/transifex
Transifex
2018-04-16 13:43:40 +02:00
Pau Pérez Fabregat
fc7dd5d081 Merge pull request #2222 from coopdevs/upgrade-skylight
Upgrade to latest Skylight from 1.6.0 to 1.6.1
2018-04-16 11:38:23 +02:00
Pau Perez
2aea612f10 Upgrade to latest Skylight from 1.6.0 to 1.6.1 2018-04-16 10:52:15 +02:00
Pau Perez
147a74f005 Fix Rubocop violations reported by Code Climate 2018-04-16 10:27:44 +02:00
Rob Harrington
6a71aafce1 Update totals for empty order before sending email 2018-04-16 17:07:07 +10:00
Rob Harrington
f5e77cdcec Ensure order total for uplaced subscription orders is zero 2018-04-16 17:07:07 +10:00
Rob Harrington
50ffd7ca01 Clear adjustments on subs orders when no items are able to be fulfilled
This prevents shipping and payment fees from being displayed in the notification email
2018-04-16 17:07:07 +10:00
Matt-Yorkley
37ba1e6c83 Close modal when image updated successfully 2018-04-15 20:52:25 +01:00
Matt-Yorkley
5777d04821 Use angular translation filter on image upload modal 2018-04-15 17:08:16 +01:00
Pau Pérez Fabregat
514ad5d898 Merge pull request #2208 from coopdevs/performance-monitoring-badge
Add Skylight's performance monitoring badge
2018-04-13 08:45:30 +02:00
Pau Perez
5822e60a66 Add Skylight's performance monitoring badge
Adding the badge, which points now to Katuma's performance monitoring
information, is required for Skylight to showcase OFN on their website.
2018-04-12 09:29:40 +02:00
Transifex-Openfoodnetwork
ce2a7a510f Updating translations for config/locales/en_US.yml 2018-04-11 00:06:55 +10:00
Pau Perez
394fb91dd5 Auto correct Rubocop's Layout/MultilineArrayBraceLayout cop 2018-04-09 18:47:18 +02:00
Pau Perez
1640d5ad0b Auto correct Rubocop's Layout/IndentHeredoc cop 2018-04-09 18:47:18 +02:00
Pau Perez
76fe1c7ee9 Auto correct Rubocop's Layout/IndentAssignment cop 2018-04-09 18:47:18 +02:00
Pau Perez
33ea2c0b07 Auto correct Rubocop's Layout/FirstParameterIndentation cop 2018-04-09 18:47:18 +02:00
Pau Perez
f5a5d735fd Auto correct Rubocop's Layout/EmptyLinesAroundModuleBody cop 2018-04-09 18:47:18 +02:00
Pau Perez
6593dea4f6 Auto correct Rubocop's Layout/EmptyLinesAroundMethodBody cop 2018-04-09 18:47:17 +02:00
Pau Perez
3161fa3801 Auto correct Rubocop's Layout/EmptyLinesAroundExceptionHandlingKeywords cop 2018-04-09 18:47:17 +02:00
Pau Perez
746fcd5802 Auto correct Rubocop's Layout/EmptyLinesAroundAccessModifier cop 2018-04-09 18:47:17 +02:00
Pau Perez
9da33b4e82 Auto correct Rubocop's Layout/EmptyLinesAroundAccessModifier cop
This also `script/rubocop_autocorrect` to automate the process of fixing
a cop and comitting the changes.
2018-04-09 18:46:11 +02:00
Pau Perez
e876ef7df1 Auto correct Rubocop's Layout/ClosingParenthesisIndentation cop 2018-04-09 17:22:52 +02:00
Pau Perez
e4c86df7b2 Auto correct Rubocop's Layout/CaseIndentation cop 2018-04-09 17:19:47 +02:00
Transifex-Openfoodnetwork
15945fa1e0 Updating translations for config/locales/fr.yml 2018-04-05 04:48:54 +10:00
Transifex-Openfoodnetwork
ad898848f8 Updating translations for config/locales/pt.yml 2018-04-05 04:29:49 +10:00
Rob Harrington
236ba9328d Order cycles in specs comply with new date validations 2018-04-04 17:18:33 +10:00
Rob Harrington
ce56e667a4 Use union operator instead of concatenate to load order cycle collection 2018-04-04 17:18:33 +10:00
Rob Harrington
b17d8c2fe3 Add validation of open and close dates for order cycles 2018-04-04 17:18:32 +10:00
Rob Harrington
b14f27f956 Return an error if no order_cycle_set params are submitted to #bulk_update action 2018-04-04 17:17:36 +10:00
Rob Harrington
18f7ec992d Refactor loading of OrderCycleSet in OrderCyclesController
This should result in a significant speed bump in saving order cycles in bulk, because only referenced OCs are loaded into the set, rather than OrderCycle.all
2018-04-04 17:17:36 +10:00
stveep
46d2d6cb8a Include option text in dropdown cart even if the variant and product have the same name 2018-04-04 16:40:18 +10:00
Maikel Linke
a2e4c33922 Remove old and useless sentence from welcome email
The sentence made assumptions of the availability of FAQs and support
forums without linking to them. So it didn't really help. It also
promised that someone would monitor the support page in the forum which
nobody seems to do.
2018-04-04 16:21:39 +10:00
Matt-Yorkley
101269a487 Adjust wording on manager invite email 2018-04-04 15:49:04 +10:00
Maikel
61fbdfcefc Merge pull request #2178 from HugsDaniel/2172_flexi_rate_miscalculated
Fixing flexible rate miscalculation
2018-04-04 15:47:33 +10:00
Hugo Daniel
2a942da160 Use rspec context 2018-04-04 14:58:48 +10:00
Hugo Daniel
bd97d08653 Remove stub after test and create two distinct calculators 2018-04-04 14:58:47 +10:00
Hugo Daniel
68ca352510 Use rspec expect syntax 2018-04-04 14:58:47 +10:00
Hugo Daniel
a71b650f89 Added tests 2018-04-04 14:58:47 +10:00
Hugo Daniel
f40bd9cfcb Fixing wrong incrementation 2018-04-04 14:58:47 +10:00
Hugo Daniel
843bca9ea3 Updated calculation for flexible rate 2018-04-04 14:58:46 +10:00
Maikel Linke
80da0d5330 Set enterprise form dirty on any change
Commit 4953c69123 introduced a bug that
the save button is not activated when changing enterprise fields.
https://github.com/openfoodfoundation/openfoodnetwork/issues/2195

This is reverting the change and fixes #2195.
Sadly, it re-opens
https://github.com/openfoodfoundation/openfoodnetwork/issues/1216.
But that one is not as severe as the current bug.
2018-04-04 13:36:03 +10:00
Hugo Daniel
5ec89dde42 Update test sentences to fit new PriceSack behavior 2018-04-04 11:25:26 +10:00
Hugo Daniel
213456f4d9 Moved PriceSack tests from per item list to per order 2018-04-04 11:25:26 +10:00
Hugo Daniel
14ea591c7d Removed redundant self 2018-04-04 11:25:25 +10:00
Hugo Daniel
28009afbea Calculate price sack fees and tests 2018-04-04 11:25:25 +10:00
Matt-Yorkley
357ff5fb7d Improve associating customer specs 2018-04-04 10:14:55 +10:00
Matt-Yorkley
5f2e72e3d4 Private shop spec 2018-04-04 10:14:55 +10:00
Em-AK
3b5c3f41a2 Ensure created users are associated with customers
When a user is created with the same email as existing customers
Then the user is associated with these customers

So that the user can access the private shops where he has been invited
to before signup
2018-04-04 10:14:55 +10:00
Rob Harrington
a83bdf16c9 Add error message for case when schedule cannot be deleted 2018-04-04 09:21:52 +10:00
Maikel
f9dbf61afc Merge pull request #2176 from HugsDaniel/2002_calculator_options_not_translated
Overwrites spree_i18n translations for calculator's options
2018-04-04 08:17:18 +10:00
Pau Pérez Fabregat
15bd0de971 Merge pull request #2194 from wrycoder/spec-deprecation-fix
Replacing deprecated #ignore with #transient
2018-04-03 18:53:04 +02:00
Pau Pérez Fabregat
87329ad729 Merge pull request #2092 from ltrls/fix-tax-admin-order-show
Fix incorrect tax on Admin Order Show
2018-04-03 08:36:10 +02:00
Hugo Daniel
6731dd0b64 Overwrites spree_i18n translations for entreprise fees calculator's options 2018-04-03 08:38:00 +10:00
Michael Toulouse
0519269a53 Replacing deprecated #ignore with #transient 2018-04-02 06:40:12 -04:00
Pau Pérez Fabregat
1357c7c3b5 Merge pull request #2185 from coopdevs/remove-in-stock-dead-scope
Remove in_stock dead scope
2018-03-28 13:16:02 +02:00
Pau Perez
0cbd967007 Remove in_stock dead scope
This makes the upgrade to Spree 2.0 a bit easier.
`spree_variants.count_on_hand` is removed in that version and this
column was used in the `in_stock` scope that we no longer use.
2018-03-28 12:13:34 +02:00
Pau Pérez Fabregat
7fbaff71c7 Merge pull request #2179 from coopdevs/ignore-vendor-bundle
Ignore Bundler's vendor/bundle
2018-03-28 11:29:56 +02:00
Pau Pérez Fabregat
9f6b3498bd Merge pull request #2177 from coopdevs/upgrade-delayed-job
Upgrade delayed_job_active_record from 4.0.2 to 4.1.2
2018-03-27 17:45:33 +02:00
Pau Pérez Fabregat
0b9881b9d3 Merge pull request #2168 from openfoodfoundation/transifex
Update translations with current Transifex version
2018-03-27 17:16:10 +02:00
Transifex-Openfoodnetwork
348364814d Updating translations for config/locales/es.yml 2018-03-28 02:11:09 +11:00
Pau Perez
e8d8d5b0e6 Ignore Bundler's vendor/bundle 2018-03-27 16:56:58 +02:00
Pau Pérez Fabregat
dbf647f700 Merge pull request #1981 from Duende13/su_issue_1936
Added 'meta_keywords' to search of products
2018-03-27 14:27:40 +02:00
Hugo Daniel
ef2b0b8383 Added tooltips and locale 2018-03-27 15:21:12 +11:00
duende13
f75b865be8 Made changes requested by reviewer, in labels and tests. 2018-03-27 15:21:11 +11:00
duende13
7670d01c6d Changing SEO tab to 'Search' tab 2018-03-27 15:21:11 +11:00
duende13
61300a62c2 Added 'meta_keywords' to search of products in shop page. Changed labels
on SEO tab and SEO form (edit product Screen) and added in en.yml file.
2018-03-27 15:21:11 +11:00
Transifex-Openfoodnetwork
a3fa6db5a9 Updating translations for config/locales/de_DE.yml 2018-03-26 21:38:21 +11:00
Pau Perez
dae883c68d Upgrade dj_active_record from 4.0.2 to 4.1.2
This brings few styling improvements on dlayed_job_active_record but
also upgrades delayed_job from 4.0.4 to 4.1.4, which includes some fixes
and improved error messages.
2018-03-26 12:32:25 +02:00
Pau Pérez Fabregat
808f7b12c7 Merge pull request #2175 from coopdevs/upgrade-skylight
Upgrade Skylight from 1.5.1 to 1.6.0
2018-03-26 12:12:46 +02:00
Pau Perez
82c9cdd874 Upgrade Skylight from 1.5.1 to 1.6.0 2018-03-26 11:13:29 +02:00
Transifex-Openfoodnetwork
a257febc79 Updating translations for config/locales/fr.yml 2018-03-26 20:06:24 +11:00
Pau Pérez Fabregat
17b129ff4f Merge pull request #2079 from mjal/424cart-page-shouldnt-show-admin-handling-if-it-is-zero
Cart page shouldnt show admin handling if it is zero
2018-03-23 18:01:09 +01:00
Pau Pérez Fabregat
6ce552727b Merge pull request #2118 from oeoeaio/payment-summary-for-emails
Show payment summary in confirmation email regardless of payment method
2018-03-23 15:30:44 +01:00
Pau Pérez Fabregat
dadc02fb11 Merge pull request #2030 from lin-d-hop/uk/1663variant-order-emails
Uk/1663variant order emails
2018-03-23 15:29:05 +01:00
Pau Pérez Fabregat
bbd2427493 Merge pull request #2075 from mjal/2001translations-missing-in-order-management-pages
i18n for admin/orders
2018-03-23 15:27:55 +01:00
Pau Pérez Fabregat
82457d2b63 Merge pull request #2138 from Matt-Yorkley/email/manager_invite
Email/manager invite
2018-03-23 15:27:14 +01:00
Pau Pérez Fabregat
9e14186431 Merge pull request #2149 from oeoeaio/subs-remove-fields
Subs: Remove obsolete subscription fields from order cycles table
2018-03-23 15:12:32 +01:00
Pau Pérez Fabregat
d422283b76 Merge pull request #2128 from mkllnk/2113-i18n-config
2113 Display only selected languages in switcher
2018-03-23 15:06:47 +01:00
Pau Pérez Fabregat
13115d4a2d Merge branch 'master' into email/manager_invite 2018-03-23 12:56:10 +01:00
Pau Pérez Fabregat
1005c299a2 Merge pull request #1464 from Matt-Yorkley/uk/bep_images
Uk/bep_images
2018-03-23 12:40:16 +01:00
Pau Pérez Fabregat
3788ec590f Merge pull request #2166 from coopdevs/configure-mails-from
Configure mails_from
2018-03-23 12:19:31 +01:00
Pau Pérez Fabregat
7dd23d20c8 Merge pull request #2160 from coopdevs/fix-enterprise-filter-in-customers
Fix enterprise filter in customers
2018-03-23 08:25:21 +01:00
stveep
231dd7b6a2 Add some rubocop spaces 2018-03-23 17:37:50 +11:00
stveep
8a783bbb7d PR changes: extract SQL in methods to scopes, add case insensitivity to test for sorting 2018-03-23 17:37:50 +11:00
stveep
9375318c4b Codeclimate: remove empty line 2018-03-23 17:37:50 +11:00
stveep
dc76b3922b Add sorting to query for producer mailer 2018-03-23 17:37:50 +11:00
stveep
40506685ef Adding extra sort step for variant name; ignore case in sorting line items by name 2018-03-23 17:37:50 +11:00
Duende13
f5ad950bc3 Change Syntax from :variant => :product to variant: :product 2018-03-23 17:37:50 +11:00
Duende13
ba37db7ccc Refactoring test to adopt most Rspec syntax (expect instead of should) 2018-03-23 17:37:50 +11:00
Duende13
401052be68 Fix Robcop issues (blank spaces and indentation) 2018-03-23 17:37:50 +11:00
Duende13
330e7d71af Sort line items by name and unit_value for confirmation email and summary screen 2018-03-23 17:37:50 +11:00
Maikel Linke
94cc8bb980 Update translations with current Transifex version
Since our Transifex integration has a few flaws, there are many
translations that are not in the code yet. This imports everything, even
translation files that are not at 100%.
2018-03-23 12:55:29 +11:00
Pau Perez
2c588847df Pick from_address from MailMethod as in Spree
Spree::Config[] picks it up from AppConfiguration rather than MailMethod
and so, gets a value different from the one configured.
2018-03-22 18:36:41 +01:00
Pau Perez
3c36d2d1a6 Remove failing mails_from default
As example.com is not a verified domain, Mandrill rejects the email
giving "reject_reason": "unsigned". Also, the mails_from setting is
already defined as a MailMethod preference.
2018-03-22 13:02:57 +01:00
Pau Pérez Fabregat
fa9d61c7fd Merge pull request #2165 from coopdevs/upgrade-skylight
Upgrade Skylight from 1.5.0 to 1.5.1
2018-03-22 09:56:35 +01:00
Pau Pérez Fabregat
92b5f9a313 Merge pull request #2127 from mkllnk/fix-scss
Remove typo from SCSS
2018-03-22 09:41:11 +01:00
Maikel Linke
9588138eb0 Remove typo
Accidentally introduced in febe66b7b0.
2018-03-22 14:18:55 +11:00
Pau Perez
d8dd84e64e Fix enterprise filter in customers page
Angular's filter function uses a pattern object to filter specific
properties on objects contained by the array. We want an exact match
instead, which has to be done by means of a function.
2018-03-21 19:16:14 +01:00
Pau Perez
ae1831241b Upgrade SKylight from 1.5.0 to 1.5.1 2018-03-21 18:41:21 +01:00
Pau Pérez Fabregat
91f30d5427 Merge pull request #2148 from coopdevs/sample-mail-method
Setup mail method automatically
2018-03-21 15:10:56 +01:00
Enrico Stano
3ce7bc54e3 Merge pull request #2143 from Matt-Yorkley/email/enterprise_user_ui
Fix enterprise user unsaved changes
2018-03-20 16:43:40 +01:00
Pierre de Lacroix
28bb15f4a9 Fix old rspec syntax 2018-03-20 12:21:27 +01:00
Pierre de Lacroix
e0b12b1332 Remove dependency on model method in feature test 2018-03-20 12:18:54 +01:00
Pierre de Lacroix
2ceecc3d6e Test Order#tax_adjustment_totals with taxed adjustment on order 2018-03-20 12:18:51 +01:00
Pierre de Lacroix
03de6c690c Fix incorrect tax amount on Admin Order #show
by calling Order#tax_adjustment_totals from
Order#price_adjustment_totals
2018-03-20 12:18:09 +01:00
Pau Perez
977c8f6203 Stick to setup+execution+assertion order in tests 2018-03-20 12:07:10 +01:00
Pau Pérez Fabregat
e23d714e83 Merge pull request #2154 from openfoodfoundation/transifex
Transifex
2018-03-19 10:29:48 +01:00
Transifex-Openfoodnetwork
ec01e55707 Updating translations for config/locales/es.yml 2018-03-19 19:56:02 +11:00
Pau Pérez Fabregat
c18b996a1b Merge pull request #2098 from Matt-Yorkley/uk/font-caching
Fix browser caching of updated icon font
2018-03-17 11:10:04 +01:00
Matt-Yorkley
1600067383 Redirect to set password page after invite 2018-03-16 17:32:40 +00:00
Matt-Yorkley
3fad51d271 Clearer angular method naming 2018-03-16 17:32:40 +00:00
Matt-Yorkley
5f0075f8b7 Refactor to use new REST resource 2018-03-16 17:32:38 +00:00
Pau Perez
716e952117 Add mail setting's env vars for development 2018-03-16 13:33:55 +01:00
Pau Perez
092122969c Make mail env vars mandatory 2018-03-16 13:33:21 +01:00
Pau Perez
f27a624687 Create the mail method from db:seed
As opposed the to sample users and enterprises that ease testing and
development, the mail method is needed for the app to function in any
environment.
2018-03-16 13:33:21 +01:00
Pau Perez
7afc999689 Differentiate MAIL_DOMAIN from plain DOMAIN
This way we can have katuma.org as the mail domain and
staging.katuma.org as web domain.
2018-03-16 13:33:20 +01:00
Pau Perez
4fc66356cb Create always a mail method from sample_data
This sets the email config so that mails can be sent right away.
2018-03-16 13:33:20 +01:00
Pau Perez
a7f1ed660b Add service to create a mail method
This will make loading sample data into staging environments easier.
2018-03-16 13:33:20 +01:00
Rob Harrington
9840467b8a Remove obsolete subscription fields from order cycles table 2018-03-16 14:55:22 +11:00
Maxime Lalisse
fa68dd0bcc refactor spec and check price 2018-03-16 01:18:21 +01:00
Rob Harrington
4d757dde78 Show payment summary in confirmation email regardless of payment method 2018-03-16 10:55:56 +11:00
Matt-Yorkley
f3f18d8338 Cleaner routes.rb entry 2018-03-15 18:48:47 +00:00
Matt-Yorkley
128ca3b1ef Invite manager specs 2018-03-15 18:48:47 +00:00
Matt-Yorkley
b64327fbb3 Invite enterprise manager functionality 2018-03-15 18:48:47 +00:00
Matt-Yorkley
5c6624e1d1 Tidy up setDirty() calls in enterprise_controller.js 2018-03-15 12:58:05 +00:00
Enrico Stano
98ea82462d Merge pull request #2136 from coopdevs/upgrade-test-dependencies
Upgrade test dependencies
2018-03-15 12:21:49 +01:00
Matt-Yorkley
4953c69123 Fix enterprise user unsaved changes 2018-03-14 23:04:54 +00:00
Pau Pérez Fabregat
586a9afaae Merge pull request #2125 from KeirOsborn/order_order_cycle_list_#1884
Order order cycle list #1884
2018-03-14 19:08:28 +01:00
Pau Pérez Fabregat
f116ee156f Merge pull request #1951 from JF-Lalonde/remove_duplicate_datepicker_1947
Remove duplicated directive datepicker from index_utils directory
2018-03-14 19:08:06 +01:00
JF-Lalonde
7a9f341363 Remove duplicated directive datepicker from index_utils directory 2018-03-14 17:01:54 +11:00
Maikel Linke
ada0fa50fc Replace Rohan's email address by optional config
Rohan's email address is hard-coded, but he doesn't want to receive
these emails any more.
2018-03-14 15:30:53 +11:00
HugsDaniel
451c57da40 Changed i18n t() path to get content from locales 2018-03-14 15:01:01 +11:00
Hugo Daniel
82a752de46 Added margin bottom on table#listing_products to display a bit above the save bar 2018-03-14 13:16:31 +11:00
Matt-Yorkley
e2f3feccf0 Add comments to authentication_service.js 2018-03-14 12:13:45 +11:00
Matt-Yorkley
e6bdbccffa Ensure email links return to proper path on private shops, refactor modal logic 2018-03-14 12:13:45 +11:00
Matt-Yorkley
ea9b0eca48 Adjust wording on validation modal message 2018-03-14 12:13:45 +11:00
Matt-Yorkley
e8bc87e62b Ensure email validation link returns to /register paths properly 2018-03-14 12:13:45 +11:00
Matt-Yorkley
d7a3c50bd5 Remove underscore from resource 2018-03-14 12:13:45 +11:00
Matt-Yorkley
f5a0862655 Email confirmation modal specs 2018-03-14 12:13:45 +11:00
Matt-Yorkley
595bc5d1a5 Show confirmation message in modal 2018-03-14 12:13:45 +11:00
Matt-Yorkley
bc621a3c43 Return user to same URL from confirmation link 2018-03-14 12:13:45 +11:00
Hugs
7ebf5db1f2 Added img tag when producer.description.length==0 to display logo even when no About Us 2018-03-14 11:44:04 +11:00
Maxime Lalisse
e806f38142 Fix translation keys 2018-03-14 10:13:40 +11:00
Pau Perez
d980809a19 Upgrade shoulda-matchers from 1.1.0 to 2.8.0 2018-03-13 17:46:59 +01:00
Pau Perez
e6f6232607 Upgrade letter_opener from 1.4.1 to 1.6.0 2018-03-13 14:21:54 +01:00
Pau Perez
cce30d5762 Upgrade Knapsack from 1.5.1 to 1.16.0 2018-03-13 14:11:00 +01:00
Pau Perez
47a6ffbf66 Upgrade Capybara from 2.15.4 to 2.18.0 2018-03-13 13:58:06 +01:00
HugsDaniel
7e5eae1b8d Added testing on statusMessage display for pending changes 2018-03-13 21:03:54 +11:00
HugsDaniel
8c4d0f11d7 Changed status message with i18n t() filter to displau unsaved changes status for customers edition in admin dashboard 2018-03-13 21:03:54 +11:00
Pau Perez
d96c1fc165 Upgrade factory_girl_rails from 3.3.0 to 4.9.0
This is the last version before moving to factory_bot_rails.
2018-03-13 10:01:14 +01:00
Pau Perez
6f879cd5d9 Remove unused gem Turn
It provides runners for MiniTest and we use RSpec.
2018-03-13 09:54:26 +01:00
Pau Perez
1d75e5a671 Upgrade rspec-retry from 0.4.2 to 0.5.6 2018-03-13 09:53:20 +01:00
Pau Perez
bdd58dccf0 Upgrade Timecop from 0.8.1 to 0.9.1 2018-03-13 09:34:09 +01:00
Pau Perez
aaf5bcbb12 Upgrade rspec-rails from 3.7.1 to 3.7.2 2018-03-13 09:32:12 +01:00
Pau Pérez Fabregat
976bbd8725 Merge pull request #2124 from coopdevs/replace-mail-method-in-base-mailer-decorator
Remove deprecated reference to Spree::MailMethod
2018-03-13 08:51:11 +01:00
Enrico Stano
341604be8a Merge pull request #2094 from openfoodfoundation/transifex
Transifex
2018-03-13 08:39:11 +01:00
Maikel Linke
01dc51c84b Consistent reference of the source locale 2018-03-13 10:25:31 +11:00
Maikel Linke
64063f305b Describe methods of I18nConfig 2018-03-13 10:24:42 +11:00
Enrico Stano
5ce320f8a2 Merge pull request #2133 from coopdevs/fix-sample-data
Fix shipping method creation in sample data
2018-03-12 18:39:34 +01:00
Pau Perez
6598c80f6e Fix shipping method creation in sample data 2018-03-12 16:52:56 +01:00
Keir Osborn
d4b84e55c2 order order cycle list from most lates close date to earliest on /orders page #1884 2018-03-12 11:04:50 +00:00
Pau Pérez Fabregat
6f5080923f Merge pull request #2123 from coopdevs/bring-seeds-from-ofn-install
Bring seeds from ofn install
2018-03-12 11:43:14 +01:00
Pau Pérez Fabregat
afda5cc04e Merge pull request #2115 from coopdevs/localize-sample-data
Localize sample data
2018-03-09 16:18:18 +01:00
Pau Perez
12e225e7c0 Add sample addresses in the instance's country
This ensures the address country and state are valid, meaning the state
belongs to the provided country. We use the instance's to do that.
2018-03-09 13:33:05 +01:00
Pau Perez
c19c22cb17 Apply couple simple tweaks to seeds.rb 2018-03-09 13:20:35 +01:00
Maikel Linke
db61a2bb17 Parse available language string more relaxed
Splitting the string with any whitespace makes it more likely the code
knows what the human meant. It also makes `strip` obsolete, since there
can't be any whitespace within the splitted strings.
2018-03-09 19:41:49 +11:00
Maikel Linke
8017921e89 Use I18nConfig in views 2018-03-09 17:45:04 +11:00
Maikel Linke
3743cf1bc3 Use I18nConfig for application defaults 2018-03-09 17:45:03 +11:00
Maikel Linke
7a34c6e3f0 Introduce I18nConfig as single point of truth
It will be used in application.rb and views.
See https://github.com/openfoodfoundation/openfoodnetwork/issues/2113
2018-03-09 17:45:03 +11:00
Pau Pérez Fabregat
b5a8df00dd Merge pull request #2117 from coopdevs/confirm-example-user
Automatically confirm the spree@example.com user
2018-03-09 07:24:40 +01:00
Enrico Stano
0aacb91f50 Merge pull request #2116 from coopdevs/clean-sample-data
Clean sample data
2018-03-07 20:58:30 +01:00
Pau Perez
1b39d57800 Remove deprecated reference to Spree::MailMethod
Said class is removed in https://github.com/spree/spree/pull/2643 in
Spree.
2018-03-07 16:24:39 +01:00
Pau Perez
5eb3dc4beb Bring states.yml from l10n_au
The states.yml present in this repo had a different format which doesn't
work with the current seeds.rb that we brought from ofn-install.
2018-03-07 10:30:12 +01:00
Pau Perez
9849f76c1c Bring seeds.rb from ofn-install 2018-03-07 10:28:34 +01:00
Pau Perez
ae2eba89ca Automatically confirm the spree@example.com user
This allows you to log in with it after you run `bundle exec
openfoodnetwork:dev:load_sample_data` rake task right away.
2018-03-07 10:10:38 +01:00
Rob H
dadbb7445b Merge pull request #2110 from oeoeaio/subs-summary-hash
Subs: Fix summary emails for shop owners
2018-03-07 16:41:38 +11:00
Rob H
4fd307832e Merge pull request #2120 from oeoeaio/subs-unpause-messaging
Subs: messaging around unpausing a subscription
2018-03-07 16:41:00 +11:00
Rob Harrington
09ca9ac2dd Alter scope to return both completed and resumed orders 2018-03-07 14:24:59 +11:00
Rob Harrington
b98afc00ba Show message about resumable orders when unpausing a subscription 2018-03-07 14:24:59 +11:00
Rob Harrington
7332e21013 Make InfoDialog more flexible (can show information as well as errors) 2018-03-07 14:24:58 +11:00
Rob Harrington
5cb0a1c371 Fix position of jQuery dialogs in admin section 2018-03-07 14:24:58 +11:00
Pau Perez
10d6a29503 Move service class to its own file 2018-03-06 15:30:25 +01:00
Pau Perez
e06af77420 Move from hash rocket to symbol syntax 2018-03-06 13:46:32 +01:00
Pau Pérez Fabregat
392d0de6c5 Merge pull request #2055 from HugsDaniel/1766_entreprise_registration_scroll_on_first_step
Changed bootstrap grid for medium size and above to have text and but…
2018-03-06 11:39:35 +01:00
Pau Pérez Fabregat
0fdd7dabd4 Merge pull request #2026 from Matt-Yorkley/uk/embedded_headers
Only include one host in embedded shopfront headers
2018-03-06 11:07:32 +01:00
Pau Pérez Fabregat
c999627d28 Merge pull request #2114 from ltrls/fix-old-rspec-syntax
Fix old rspec syntax
2018-03-06 11:04:21 +01:00
Hugo Daniel
f2eee77a15 fixed modal height and change grid to have button and text side by side 2018-03-06 16:21:35 +11:00
Pierre de Lacroix
040c292a76 Fix some more old rspec syntax 2018-03-06 01:29:54 +01:00
Pierre de Lacroix
12e3b88b71 Fix some old Rspec syntax 2018-03-06 01:24:54 +01:00
Rob Harrington
2bfa923fe1 Use a hash instead of an array :face_palm: 2018-03-02 15:50:10 +11:00
Rob H
d30362b78c Merge pull request #2108 from oeoeaio/subs-neg-stock
Subs: handle negative stock for subscriptions
2018-03-02 15:47:12 +11:00
Rob Harrington
28491ee948 Skip stock check when requested quantity is zero
This prevents an error being raised when available stock is negative
2018-03-02 14:53:24 +11:00
Rob Harrington
fe4145d9d5 Use expect syntax 2018-03-02 14:53:24 +11:00
Rob H
3ef29fde2c Merge pull request #2107 from oeoeaio/subs-missing-close
Subs: Add message to indicate OC has no close date
2018-03-02 14:52:54 +11:00
Rob Harrington
05e6c3daa6 Add message to indicate missing orders_close_at date 2018-03-02 13:28:34 +11:00
Rob H
9d8456cbf3 Merge pull request #2090 from oeoeaio/subs-styling
Subs: Make checklist more legible
2018-03-02 13:24:05 +11:00
Rob H
1d8f332cc6 Merge pull request #2096 from oeoeaio/subs-estimates
Subs:  Improve estimates of item prices and fees
2018-03-02 13:22:27 +11:00
Rob Harrington
6f554814ce Add class documentation for SubscriptionEstimator 2018-03-02 10:11:26 +11:00
Rob Harrington
f1545a4ab6 Show fee estimates in subscription totals in UI 2018-03-02 10:11:26 +11:00
Rob Harrington
31750a7bba Add logic for calculator of fee estimates to SubscriptionEstimator 2018-03-02 10:11:26 +11:00
Rob Harrington
ad391c73ab Add migration to add fee estimate fields to subscriptions table 2018-03-02 10:11:26 +11:00
Rob Harrington
014283447d Use delegate to access subscription shop 2018-03-02 10:11:26 +11:00
Rob Harrington
3b2d4ae2d4 Estimator take variant overrides into account 2018-03-02 10:11:26 +11:00
Rob Harrington
14a03aab35 Fallback to previous saved estimate if calculator not available 2018-03-02 10:11:26 +11:00
Rob Harrington
904a364bf1 Stop unnecessarily passing fee_calculators around 2018-03-02 10:11:26 +11:00
Rob Harrington
30df1d4345 Refector controller to allow price_estimate calculation 2018-03-02 10:11:26 +11:00
Rob Harrington
b85e38010f Delegate responsibility to estimating prices for subscriptions to dedicated service object 2018-03-02 10:11:26 +11:00
Transifex-Openfoodnetwork
7a411b0452 Updating translations for config/locales/de_DE.yml 2018-03-02 03:48:06 +11:00
Transifex-Openfoodnetwork
ecbd1fe93d Updating translations for config/locales/pt.yml 2018-03-02 02:15:53 +11:00
Enrico Stano
14caac0212 Merge pull request #2074 from mjal/2057states-are-not-displayed-in-modify-address-pop-in-and-prevent-saving-2
Bug fix in customers edit address
2018-03-01 14:59:02 +01:00
Enrico Stano
6e9efe79b7 Merge pull request #2053 from Matt-Yorkley/uk/enterprise_limit
Increase default enterprise limit
2018-03-01 14:40:24 +01:00
Maxime Lalisse
cff1d7224d Bug fix in customers edit address 2018-03-01 22:02:39 +11:00
Matt-Yorkley
86a500bcdf Fix browser caching of updated icon font 2018-02-23 20:49:42 +00:00
Matt-Yorkley
7bd0de99ac Adjust brittle referer header check 2018-02-23 16:35:46 +00:00
Matt-Yorkley
9506ea456e Stub the request object instead of controller method 2018-02-23 15:57:28 +00:00
Matt-Yorkley
e173f823c8 Refactor embedded logic 2018-02-23 15:57:28 +00:00
Matt-Yorkley
4a818c07bb Only include one host in embedded shopfornt headers 2018-02-23 15:57:28 +00:00
Rob Harrington
1ac9417a20 Add class description for ProxyOrder 2018-02-22 16:23:10 +11:00
Rob Harrington
ae1c8344d1 Ensure price estimates generated for subscriptions take overrides into account 2018-02-22 16:16:49 +11:00
Rob Harrington
add9c83812 Ensure correct price is used by OrderFactory when building line items 2018-02-22 16:16:49 +11:00
Rob Harrington
993f02a989 Add knowledge of variant overrides to OrderFactory 2018-02-22 16:16:49 +11:00
Rob Harrington
d7d40a4a0f Create new OrderFactory service object for initializing order from attr hash 2018-02-22 16:16:49 +11:00
Rob Harrington
6bf4ed1ac5 Add new review view to subscription wizard 2018-02-22 16:13:29 +11:00
Rob Harrington
6bdbdc06e7 Use select2_search instead of targetted_select2_search 2018-02-22 16:13:29 +11:00
Rob Harrington
2e94654f91 Create factory to hold auxillary functions for subscriptions
NOTE: Moved estimatedSubtotal and estimatedTotal functions to the new factory from the subscription line items controller
2018-02-22 16:13:29 +11:00
Rob Harrington
2a731b2db5 Rename SubscriptionPrototype to SubscriptionActions 2018-02-22 16:13:29 +11:00
Rob Harrington
dcfa5fa42d Use services to access injected data arrays 2018-02-22 16:13:29 +11:00
Rob Harrington
ad62b258ac Populate 'all' array from Schedules#load 2018-02-22 16:13:29 +11:00
Rob Harrington
95f70409ee Auto-load customers into service when present 2018-02-22 16:13:29 +11:00
Rob Harrington
3ac57269ed Use .all convention for shipping and payment methods resource services 2018-02-22 16:13:29 +11:00
Rob Harrington
8951c79f71 Only count future orders in subs index order count 2018-02-22 15:09:33 +11:00
Rob Harrington
b3e7badd37 Fix incorrect translation key 2018-02-22 14:33:25 +11:00
Rob Harrington
cec5fddf6a Add missing translation 2018-02-22 14:33:25 +11:00
Rob Harrington
c4a81bdc48 Translate subscriptions loading flash 2018-02-22 14:33:25 +11:00
Rob Harrington
9887819c16 Update ref for ofn-qz 2018-02-22 13:56:10 +11:00
Pau Pérez Fabregat
c1b7e9f79e Merge pull request #2069 from HugsDaniel/1889_bug_in_order_cycles_filter_on_customer_admin_reports
Loads all order cycles for current user whether he is producer, distributor or coordinator
2018-02-21 17:11:52 +01:00
Hugo Daniel
3fa5ca7eae Use accessible_by method instead of involving_managed_distributors method to fetch all order cycles 2018-02-21 17:33:28 +11:00
Hugo Daniel
65fea6291e CodeClimate requested changes 2018-02-21 17:33:28 +11:00
Hugo Daniel
64c2bdda1c Added loading of all active or complete order cycles concerned by the current user to the reports form collection
User will see all order cycles he is concerned by as producer, distributor or coordinator
2018-02-21 17:33:28 +11:00
Maikel Linke
de8df4b3e9 Manual update from transifex 2018-02-21 14:25:19 +11:00
Maikel Linke
70bb64d58d Manual update from transifex 2018-02-21 14:24:45 +11:00
Maikel Linke
a529525a63 Manual update from transifex 2018-02-21 14:24:28 +11:00
Transifex-Openfoodnetwork
50c1224139 Updating translations for config/locales/de_DE.yml 2018-02-21 10:59:20 +11:00
Rob Harrington
927ab3a23a Make subscriptions setup checklist more legible 2018-02-19 11:11:10 +11:00
Pau Pérez Fabregat
183621f90b Merge pull request #2080 from coopdevs/add-skylight-staging
Enable Skylight in staging
2018-02-15 11:26:16 +01:00
Matt-Yorkley
fdc14ab44e Add controller specs 2018-02-14 15:37:22 +00:00
Pau Perez
a7dcaf15fa Enable Skylight in staging
This is a follow-up of
https://github.com/openfoodfoundation/openfoodnetwork/pull/2070.

When running the production API key in staging, the `log/skylight.log`
showed:

```
[SKYLIGHT] [1.5.0] You are running in the staging environment but
haven't added it to config.skylight.environments, so no data will be
sent to skylight.io.
```

According to
https://www.skylight.io/support/advanced-setup#setting-up-multiple-environments
it turns out we need to create a new app for staging and use its API
key.
2018-02-14 14:46:10 +01:00
Matt-Yorkley
8a11dc3c33 Decouple image upload from Spree 2018-02-14 13:46:05 +00:00
Matt-Yorkley
23deb37876 Save/Update product image test 2018-02-14 13:46:05 +00:00
Matt-Yorkley
526317c373 BEP Image upload specs 2018-02-14 13:46:05 +00:00
Matt-Yorkley
7d27d1325e Bulk Edit image upload
Image Upload Translations

Squashme

Squashme

Squashme

Code review tweaks
2018-02-14 13:46:05 +00:00
Matt-Yorkley
24dca5e51f Add image column to product bulk edit 2018-02-14 13:46:05 +00:00
Matt-Yorkley
237854c781 Update enterprise limit error text and use expect sytnax 2018-02-13 14:05:18 +00:00
Matt-Yorkley
3c5b01ece0 Update enterprise limit spec 2018-02-13 14:05:18 +00:00
Matt-Yorkley
d52f9fd43f Add enterprise limit modal 2018-02-13 14:05:18 +00:00
Pierre de Lacroix
5c046b76f0 Fix failing tests 2018-02-13 14:05:17 +00:00
Pierre de Lacroix
ab1ed16435 Add a migration to change Spree::Users enterprise_limit default value from 1 to 5 2018-02-13 14:05:17 +00:00
jtruong2
689aed7080 Add spec for admin & handling 2018-02-12 15:53:28 +01:00
jtruong2
6c92fdf167 fixes issue if admin and handling == 0 then do not render row 2018-02-12 15:53:19 +01:00
Maxime Lalisse
aef73aef38 Add translation keys 2018-02-09 22:15:02 +01:00
Maxime Lalisse
11eda94949 Add i18n for admin/orders 2018-02-09 17:40:31 +01:00
Pau Pérez Fabregat
23d36e3898 Merge pull request #2058 from coopdevs/improve-order-cycle-notification
Improve code style and docs of job
2018-02-09 13:19:32 +01:00
Pau Perez
c79641c77c Fix typos in documentation 2018-02-09 09:53:40 +01:00
Pau Perez
aa4bd7f397 Improve code style and docs of job 2018-02-09 09:53:39 +01:00
Pau Pérez Fabregat
be07996656 Merge pull request #2070 from chancancode/skylight
Add Skylight instrumentation
2018-02-09 08:55:30 +01:00
Rob Harrington
e12207f3de Use shop contact email and contact name for subscription emails 2018-02-09 14:44:15 +11:00
Rob Harrington
09b800672d Fix specs to handle non-deterministic ordering 2018-02-09 14:44:15 +11:00
Rob Harrington
c59b172348 Fix typo 2018-02-09 14:44:15 +11:00
Rob Harrington
7017c8540c Replace references to 'standing line item' with 'subscription line item' 2018-02-09 14:44:15 +11:00
Rob Harrington
ae4420d9ba Rename standing line item files 2018-02-09 14:44:14 +11:00
Rob Harrington
eb53df8238 Rename 'standing_line_items' table to 'subscription_line_items' 2018-02-09 14:44:14 +11:00
Rob Harrington
71370e0bce Replace references to 'standing order' with 'subscription' (cleanup) 2018-02-09 14:44:14 +11:00
Rob Harrington
ba66c0e862 Replace references to 'standing order' with 'subscription' (schedule) 2018-02-09 14:44:14 +11:00
Rob Harrington
c605742671 Replace references to 'standing order' with 'subscription' (routes) 2018-02-09 14:44:14 +11:00
Rob Harrington
720628e49e Replace references to 'standing order' with 'subscription' (translations) 2018-02-09 14:44:14 +11:00
Rob Harrington
501fa4c901 Replace references to 'standing order' with 'subscription' (erb) 2018-02-09 14:44:14 +11:00
Rob Harrington
532f998b24 Replace references to 'standing order' with 'subscription' (js: spec) 2018-02-09 14:44:14 +11:00
Rob Harrington
b7876ebfbf Replace references to 'standing order' with 'subscription' (spec) 2018-02-09 14:44:14 +11:00
Rob Harrington
04e48989c9 Replace references to 'standing order' with 'subscription' (lib) 2018-02-09 14:44:13 +11:00
Rob Harrington
094c3e70f7 Replace references to 'standing order' with 'subscription' (HAML) 2018-02-09 14:44:13 +11:00
Rob Harrington
b3eaa30f3d Replace references to 'standing order' with 'subscription' (JS) 2018-02-09 14:44:13 +11:00
Rob Harrington
672f96b85b Replace references to 'standing order' with 'subscription' 2018-02-09 14:44:13 +11:00
Rob Harrington
902802594f Renaming standing order files (lib, spec) 2018-02-09 14:44:13 +11:00
Rob Harrington
a9b5fd69d8 Renaming standing order files 2018-02-09 14:44:13 +11:00
Rob Harrington
b258c032cc Rename 'standing_orders' table to 'subscriptions' 2018-02-09 14:44:12 +11:00
Rob Harrington
fe7b86ff60 Fix broken call to log_order which should have been record_order 2018-02-09 14:44:12 +11:00
Rob Harrington
17950ba498 Lazy load summarizers for standing order jobs outside of initializer
The enqueue script seems to causes delayed job to skip initialization of the job class, meaning that the summarizers were missing
2018-02-09 14:44:12 +11:00
Rob Harrington
ccbe33001f Add missing interpolation for shop name 2018-02-09 14:44:12 +11:00
Rob Harrington
c5f3249172 Fix rubocop issues 2018-02-09 14:44:12 +11:00
Rob Harrington
e7eb02dfe3 Reduce cognitive complexity of VariantsController#search 2018-02-09 14:44:12 +11:00
Rob Harrington
17a0b18e50 Reduce cognitive complexity of StandingLineItemsController#build 2018-02-09 14:44:12 +11:00
Rob Harrington
2012c23956 Reduce cognitive complexity of ProxyOrder#state 2018-02-09 14:44:12 +11:00
Rob Harrington
88a5d4be47 Reduce cognitive complexity of LineItemSyncer#update_item_quantities 2018-02-09 14:44:12 +11:00
Rob Harrington
224249d66b Reduce cognitive complexity of OrderSyncer 2018-02-09 14:44:11 +11:00
Rob Harrington
ceab1fe16a Reduce cognitive complexity of StandingOrderPaymentUpdater 2018-02-09 14:44:11 +11:00
Rob Harrington
c1f0a0b514 Reduce congnitive complexity of AddressFinder 2018-02-09 14:44:11 +11:00
Rob Harrington
ce09a8dad6 Reduce cognitive complexity of StandingOrder#state 2018-02-09 14:44:11 +11:00
Rob Harrington
99db6f8e14 Fix translation key for StandingOrderValidator errors 2018-02-09 14:44:11 +11:00
Rob Harrington
d6924d2866 Add comment to OrderUpdateIssues 2018-02-09 14:44:11 +11:00
Rob Harrington
3e68973812 Rename StandingOrderUpdater to OrderSyncer 2018-02-09 14:44:11 +11:00
Rob Harrington
bbc3cad67d Refactor large StandingOrderUpdater#update! method
Note: extracted line items logic into separate class
2018-02-09 14:44:11 +11:00
Rob Harrington
50d3522b2c Extract logic for recording issues with updating orders to separate class 2018-02-09 14:44:11 +11:00
Rob Harrington
2c5bfab29f Refactoring price estimation logic for StandingOrderForm 2018-02-09 14:44:11 +11:00
Rob Harrington
844cd79270 Clean-up of standing order form and spec 2018-02-09 14:44:10 +11:00
Rob Harrington
8ae4307a69 Move logic for updating orders to dedicated class 2018-02-09 14:44:09 +11:00
Rob Harrington
2c40252edb Extract validation logic for standing orders into service object 2018-02-09 14:44:09 +11:00
Rob Harrington
0c302b022a Move StandingOrderForm to app/services folder 2018-02-09 14:44:09 +11:00
Rob Harrington
7581779a0d Remove weird escape characters 2018-02-09 14:44:09 +11:00
Rob Harrington
f9727de206 Comment out interface for turning standing orders ON for an enterprise 2018-02-09 14:44:09 +11:00
Rob Harrington
76daa183d5 Add orders sub-menu to standing-order index page 2018-02-09 14:44:09 +11:00
Rob Harrington
981b874263 Remove unused method active? for order cycles 2018-02-09 14:44:09 +11:00
Rob Harrington
4362ef2cea Properly translate all error messages for StandingOrderForm 2018-02-09 14:44:09 +11:00
Rob Harrington
7ca60e1990 Use activerecord error translations properly 2018-02-09 14:44:09 +11:00
Rob Harrington
1bf2f7ad03 Fix a couple of offences pickup up by rubocop 2018-02-09 14:44:09 +11:00
Rob Harrington
8ba1a909ca Use summarizer for standing order confirm job 2018-02-09 14:44:08 +11:00
Rob Harrington
c86207212f Add confirmation summary email 2018-02-09 14:44:08 +11:00
Rob Harrington
86cddb1cc4 Capitalise translated strings 2018-02-09 14:44:08 +11:00
Rob Harrington
b49c44f7ce Generalise record_failure method to record_and_log_error 2018-02-09 14:44:08 +11:00
Rob Harrington
818af47613 Move rescue clause to process method
This prevents a placement email from being sent unless the order is processed successfully
2018-02-09 14:44:08 +11:00
Rob Harrington
ef6c9ec0f0 Integrate standing order summarizer into placement job 2018-02-09 14:44:08 +11:00
Rob Harrington
13d01df4d8 Add mail method and template for sending placement summary emails to shop owners 2018-02-09 14:44:08 +11:00
Rob Harrington
cf30b7c883 Add service objects for summarizing outcomes of standing order processing jobs 2018-02-09 14:44:08 +11:00
Rob Harrington
0c0e12e165 Show edit link in placement email if changes are allowed by shop 2018-02-09 14:44:08 +11:00
Rob Harrington
f9af8edf27 Ignore Metrics/BlockLength for specs and Rails/HasAndBelongsToMany 2018-02-09 14:44:08 +11:00
Rob Harrington
8bf460c93a Manually fix remaining rubocop offences 2018-02-09 14:44:08 +11:00
Rob Harrington
f902b8cef0 Fix rubocop Style/ClassAndModuleChildren offences 2018-02-09 14:44:07 +11:00
Rob Harrington
84ad996ef8 Use guard clauses 2018-02-09 14:44:07 +11:00
Rob Harrington
fb28940952 Use Time.zone.now instead of Time.now 2018-02-09 14:44:07 +11:00
Rob Harrington
03f1980b1b Auto-correct rubocop offences for standing-orders 2018-02-09 14:44:07 +11:00
Rob Harrington
26a325e6e0 Handle payment processing errors for standing orders 2018-02-09 14:44:07 +11:00
Rob Harrington
2576d10e49 Create a new payment when none is present 2018-02-09 14:44:07 +11:00
Rob Harrington
67e05cea9c Add failed payment email to StandingOrderMailer 2018-02-09 14:44:07 +11:00
Rob Harrington
0ccb0ce0e4 Make standing order header partial more generic 2018-02-09 14:44:07 +11:00
Rob Harrington
8c96a19e3e Specify minimum postgresql version for travis 2018-02-09 14:44:07 +11:00
Rob Harrington
6e83c6dc86 Move standing order emails to a dedicated StandingOrderMailer 2018-02-09 14:44:07 +11:00
Rob Harrington
d6a9d63de5 Replace StandingOrderSyncJob with ProxyOrderSyncer service object 2018-02-09 14:44:06 +11:00
Rob Harrington
6ea343f26e Clean up proxy order performance specs 2018-02-09 14:44:06 +11:00
Rob Harrington
43c2aca208 Use delete_all instead of destroy_all for increased speed 2018-02-09 14:44:06 +11:00
Rob Harrington
8a498391ca Add performance spec for removal of proxy orders 2018-02-09 14:44:06 +11:00
Rob Harrington
146348a4fe Refactor proxy order syncer using direct sql query for increased speed 2018-02-09 14:44:06 +11:00
Rob Harrington
48b39f4712 Add performance spec for proxy order syncer 2018-02-09 14:44:06 +11:00
Rob Harrington
3aee0b5e70 Allow proxy order syncer to accept both ActiveRecord::Relation or StandingOrder 2018-02-09 14:44:06 +11:00
Rob Harrington
6d5c920a95 Split proxy order sync logic out into dedicated service object 2018-02-09 14:44:06 +11:00
Rob Harrington
cdf04323a9 Serialize standing order credit_card_id to enable selection in edit form 2018-02-09 14:44:06 +11:00
Rob Harrington
bdac68900f Move address and card loading logic down into DetailsController
Also switch to using CreditCardResource to load the card
2018-02-09 14:44:05 +11:00
Rob Harrington
a5ae4c801c Initialize ofn-select2 with empty array when data is a promise 2018-02-09 14:44:05 +11:00
Rob Harrington
404913dcfa Move form-saving logic into dedicated StandingOrderForm service 2018-02-09 14:44:05 +11:00
Rob Harrington
c94badbf36 Stub or provide mailer as appropriate 2018-02-09 14:44:04 +11:00
Rob Harrington
ca1485f121 Add missing translations for proxy order controller error messages 2018-02-09 14:44:04 +11:00
Rob Harrington
dfe874cf3f Attempt to add a credit card before processing payment 2018-02-09 14:44:04 +11:00
Rob Harrington
c20c9e2e78 Use the rails logger instead of Bugsnag 2018-02-09 14:44:04 +11:00
Rob Harrington
f4f6fb6a7a Update and process standing order payments prior to confirmation 2018-02-09 14:44:04 +11:00
Rob Harrington
ac8e09bc11 Add credit card validation to StandingOrderForm 2018-02-09 14:44:04 +11:00
Rob Harrington
183ad87d07 Fix mislabeled StandingOrderForm specs 2018-02-09 14:44:04 +11:00
Rob Harrington
f95d1ef058 Show message when no credit cards available for a customer 2018-02-09 14:44:04 +11:00
Rob Harrington
61b64a7516 Add credit card selection element to standing orders form 2018-02-09 14:44:04 +11:00
Rob Harrington
494f2f4821 Add cards lookup action to CustomersController 2018-02-09 14:44:04 +11:00
Rob Harrington
d3937e5c80 Move customer address lookup action to CustomersController 2018-02-09 14:44:03 +11:00
Rob Harrington
3ac2ac34ed Add credit_card_id to StandingOrder model 2018-02-09 14:44:03 +11:00
Rob Harrington
25907d8969 Prevent standing order form from accepting non cash/stripe payment methods 2018-02-09 14:44:03 +11:00
Rob Harrington
26b85052e1 Load only Cash and Stripe payment methods into standing order form actions 2018-02-09 14:44:03 +11:00
Rob Harrington
07a7993109 Require a Cash or Stripe payment method in standing order setup process 2018-02-09 14:44:03 +11:00
Rob Harrington
7798b12086 Replace translation key for yes_i_am_sure 2018-02-09 14:44:03 +11:00
Rob Harrington
be11a1a2f9 Fix memoization issue with line item unit specs 2018-02-09 14:44:03 +11:00
Rob Harrington
86d8133f82 Stop setting host for url helpers in specs
All configuration is now happening in test.rb or spec_helper.rb
2018-02-09 14:44:03 +11:00
Rob Harrington
6081db382c Updating addresses on standing order updates addresses on any initialised orders 2018-02-09 14:44:03 +11:00
Rob Harrington
b89ab2c407 Adding link to view/edit the order from Standing Order placement and confirmation emails 2018-02-09 14:44:02 +11:00
Rob Harrington
fce2d743e5 Adding proxy-order state to specs 2018-02-09 14:44:02 +11:00
Rob Harrington
2a3fc8cfec Automatically copy shipping address from billing if none present 2018-02-09 14:44:02 +11:00
Rob Harrington
7d1fc8cbe1 Make sure correct intro message is used for empty standing order notification 2018-02-09 14:44:02 +11:00
Rob Harrington
f969caa2d1 Do not place standing order when no items are available
Send notification to customer informing them that an order was not placed...
2018-02-09 14:44:02 +11:00
Rob Harrington
0fd86a6cc7 Adding UI to require action from user when pausing/cancelling standing order with open orders 2018-02-09 14:44:02 +11:00
Rob Harrington
ab5dc7ddd5 Require action from user when pausing/cancelling standing order with open orders 2018-02-09 14:44:02 +11:00
Rob Harrington
3ce8a1abba Tweaking proxy order state logic
Inherits 'paused' state from standing order if present
2018-02-09 14:44:02 +11:00
Rob Harrington
834e5b702e Using standing_order_form.$submitted for show/hide logic for angularjs form errors 2018-02-09 14:44:02 +11:00
Rob Harrington
001f329393 Refactoring StandingOrderPrototype
Allow handling of create/update responses from downstream controllers using promise chaining
2018-02-09 14:44:01 +11:00
Rob Harrington
72549697a3 Redirecting to standing orders index on successful standing order save 2018-02-09 14:44:01 +11:00
Rob Harrington
1e0356a74b StatusMessages can be shown on StandingOrder index 2018-02-09 14:44:01 +11:00
Rob Harrington
42266397aa Improving performance of available variant lookup for standing orders
Only search the DB for available variants once
2018-02-09 14:44:01 +11:00
Rob Harrington
846cccf373 Showing StandingOrder error messages in status bar when save fails 2018-02-09 14:44:01 +11:00
Rob Harrington
ad2506fe75 Require StandingOrders to have at least one product (StandingLineItem) 2018-02-09 14:44:01 +11:00
Rob Harrington
7dcd39986f Refactoring StandingOrder validations and errors
Moving validations to StandingOrderForm
2018-02-09 14:44:01 +11:00
Rob Harrington
b28f2908a6 Fix 'postcode' typo in standing order form 2018-02-09 14:44:01 +11:00
Rob Harrington
7d9d510c0f Adding a comma after each schedule listed on OC index 2018-02-09 14:44:01 +11:00
Rob Harrington
c64f3590ad Using placeholder attribute to show prompt text for schedule dropdown 2018-02-09 14:44:01 +11:00
Rob Harrington
f0f478dfa0 Adding placeholder field with default to ofn-select2 component 2018-02-09 14:44:00 +11:00
Rob Harrington
ceaae89dee Prevent order cycles that are linked to schedules from being destroyed 2018-02-09 14:44:00 +11:00
Rob Harrington
77a50eac42 Show confirmation message when creating/updating/deleting Schedules 2018-02-09 14:44:00 +11:00
Rob Harrington
877a5f27d1 ProxyOrder state is 'pending' until OC opens, then 'cart' until OC closes 2018-02-09 14:44:00 +11:00
Rob Harrington
2c0928ca20 Automatically show 'Schedules' column on OC index when Standing Orders are enabled 2018-02-09 14:44:00 +11:00
Rob Harrington
4e686ecfcc Debouncing admin variant search requests by 300ms 2018-02-09 14:44:00 +11:00
Rob Harrington
35e42b28fe Using customer selection to search for addresses on standing order creation
Can also copy copy address from billing to shipping
2018-02-09 14:44:00 +11:00
Rob Harrington
9137f68a57 Adding logic to SearchController#customer_addresses for case when customer is not found 2018-02-09 14:44:00 +11:00
Rob Harrington
6ac49a7694 Adding route and controller action for searching for customer addresses using AddressFinder 2018-02-09 14:44:00 +11:00
Rob Harrington
c5066bb613 Making AddressFinder a little more secure
Only allow search by email when a customer or user with matching email is also provided
2018-02-09 14:43:59 +11:00
Rob Harrington
4a0dab3608 Renaming LastUsedAddress as AddressFinder 2018-02-09 14:43:59 +11:00
Rob Harrington
1b72b7258d Refactoring LastUsedAddress to take customers or users 2018-02-09 14:43:58 +11:00
Rob Harrington
58070a8b3e Adding loading flash and no-results messaging to standing orders index 2018-02-09 14:43:58 +11:00
Rob Harrington
57653cb911 Displaying setup instructions on Standing Orders index 2018-02-09 14:43:58 +11:00
Rob Harrington
ae209f72b9 Removing unrequired OrderCycleOpenCloseJob 2018-02-09 14:43:58 +11:00
Rob Harrington
2859075e43 WIP: StandingOrderConfirmJob no longer scoped to an order cycle 2018-02-09 14:43:58 +11:00
Rob Harrington
0e50009875 WIP: StandingOrderPlacementJob no longer scoped to an order cycle 2018-02-09 14:43:58 +11:00
Rob Harrington
514a462f7b WIP: Refactor, of standing order placement and confirmation jobs
ie. Transfering responsibility for tracking standing order placement and confirmation to proxy orders
2018-02-09 14:43:58 +11:00
Rob Harrington
01cbd7ae9d WIP: Adding flags for standing order placement and confirmation to proxy_orders table 2018-02-09 14:43:58 +11:00
Rob Harrington
f92b824f52 User is warned about initialising standing order orders 2018-02-09 14:43:58 +11:00
Rob Harrington
3adfb0db3f Issues with updating orders are reported when saving standing orders 2018-02-09 14:43:58 +11:00
Rob Harrington
fd07830c02 Adding order_update_issues to serialized proxy orders 2018-02-09 14:43:57 +11:00
Rob Harrington
9e986f25f1 Orders are not marked as problematic if the changed value matches the new value 2018-02-09 14:43:57 +11:00
Rob Harrington
e357a7b401 StandingOrderForm: Storing problematic orders for reporting to user 2018-02-09 14:43:57 +11:00
Rob Harrington
9f50253537 StandingOrderForm: Rescuing from RecordInvalid when saving 2018-02-09 14:43:57 +11:00
Rob Harrington
1e8767e8b5 StandingOrderForm: Small refactor, update initialised orders one-by-one 2018-02-09 14:43:57 +11:00
Rob Harrington
a6add2eff6 Limiting shops loaded onto standing orders index to those with standing orders enabled 2018-02-09 14:43:57 +11:00
Rob Harrington
25639a822a Implementing standing order feature toggle on back-end interface 2018-02-09 14:43:57 +11:00
Rob Harrington
e1f8af6d5b Adding standing orders feature toggle to enterprise form 2018-02-09 14:43:57 +11:00
Rob Harrington
e7b8648792 Adding standing orders feature toggle column to enterprises table 2018-02-09 14:43:57 +11:00
Rob Harrington
c819197d07 BasicOrderCycleSerializer serialises open and closes dates with time and zone 2018-02-09 14:43:57 +11:00
Rob Harrington
15fb493d9a StandingOrderPlacementJob: cap quantity at 0 for items not available through OC 2018-02-09 14:43:56 +11:00
Rob Harrington
cd6394987d StandingOrderPlacementJob: Moving logic for processing an order to completion to separate method 2018-02-09 14:43:56 +11:00
Rob Harrington
0cf7d1a63d Link standing order orders to user on initialisation if customer user exists 2018-02-09 14:43:56 +11:00
Rob Harrington
439c81d836 Format of hours in standing order placement email without leading zero 2018-02-09 14:43:56 +11:00
Rob Harrington
1e0d43e975 Changing explain text on confirm email
Removing mention of making changes
2018-02-09 14:43:56 +11:00
Rob Harrington
994baf12c4 Adding specs to ensure placement emails are sent 2018-02-09 14:43:56 +11:00
Rob Harrington
d12a1371c2 Assigning a priority to OrderCycleOpenCloseJob 2018-02-09 14:43:56 +11:00
Rob Harrington
f9e40ba586 Fixing typos in standing order placement job 2018-02-09 14:43:56 +11:00
Rob Harrington
a32fb752dd Removing number column from orders panel, adding edit action 2018-02-09 14:43:56 +11:00
Rob Harrington
e4f30cea57 Fixing styling for table rows within index panels 2018-02-09 14:43:56 +11:00
Rob Harrington
d0f4cc2ee2 PlacementJob loads ProxyOrders based on order cycle close date 2018-02-09 14:43:55 +11:00
Rob Harrington
c4c9c92d7e Refactoring StandingOrderPlacementJob, loading ProxyOrders and initialsing where necessary 2018-02-09 14:43:55 +11:00
Rob Harrington
e6fbdb17e8 Only initialise a proxy order once 2018-02-09 14:43:55 +11:00
Rob Harrington
02f474e16a Fixing up spec data for orders spec 2018-02-09 14:43:55 +11:00
Rob Harrington
0861a4391e Removing ui-sortable library (no longer required) 2018-02-09 14:43:55 +11:00
Rob Harrington
1731d4daa7 Rejigging schedule dialog, limit options to coordinated order cycles, with same coordinator as selected OCs 2018-02-09 14:43:55 +11:00
Rob Harrington
875557dc9d WIP: ProxyOrders don't require an order, fixing remainder of specs 2018-02-09 14:43:55 +11:00
Rob Harrington
be8fa1f4e4 WIP: ProxyOrders don't require an order, calculating total for serialized proxy orders from standing order where order does not exist 2018-02-09 14:43:55 +11:00
Rob Harrington
3d3013a592 WIP: ProxyOrders don't require an order, adding an edit path for proxy orders
initialises an order if one does not exist and redirects to its edit path
2018-02-09 14:43:55 +11:00
Rob Harrington
4b440c83a4 WIP: ProxyOrders don't require an order, StandingOrderForm changes 2018-02-09 14:43:55 +11:00
Rob Harrington
f57cae9124 Removing null: false contraint on order_id for ProxyOrder 2018-02-09 14:43:55 +11:00
Rob Harrington
2231d4c6cf Using factories to build spec data rather than StandingOrderForm 2018-02-09 14:43:54 +11:00
Rob Harrington
e29a4f9a8a Moving order initialisation logic from StandingOrderForm to ProxyOrder model 2018-02-09 14:43:54 +11:00
Rob Harrington
64206bc35b ProxyOrders belong to order cycles 2018-02-09 14:43:54 +11:00
Rob Harrington
e351c3e355 Renaming StandingOrderOrder to ProxyOrder 2018-02-09 14:43:54 +11:00
Rob Harrington
fc845a36f1 Fix weird spec failure cause by a Rails.cache.clear call resetting the currency to USD on CI only 2018-02-09 14:43:54 +11:00
Rob Harrington
9bf3767093 Preventing line item stock level checks when updating standing orders 2018-02-09 14:43:54 +11:00
Rob Harrington
8e0f2fcb35 Adding optional manual override of line item stock level check 2018-02-09 14:43:54 +11:00
Rob Harrington
00ee5a63df Removing incorrect namespacing from StandingOrderForm spec 2018-02-09 14:43:54 +11:00
Rob Harrington
e068c4831b Adding job to send confirm emails for standing orders on order cycle close 2018-02-09 14:43:54 +11:00
Rob Harrington
2a03477597 Adding standing_orders_confirmed_at flag to order_cycles 2018-02-09 14:43:54 +11:00
Rob Harrington
deebc31c34 DRYing out standing order email template 2018-02-09 14:43:53 +11:00
Rob Harrington
9f1ff1fd01 Adding OrderCycleOpenCloseJob to the whenever schedule 2018-02-09 14:43:53 +11:00
Rob Harrington
f7229ab229 Uninitialised but recently updated order_cycles also trigger StandingOrderPlacementJob 2018-02-09 14:43:53 +11:00
Rob Harrington
c2b68ed6b5 Running StandingOrderSyncJob when order cycles added to a schedule via OrderCyclesController 2018-02-09 14:43:53 +11:00
Rob Harrington
0a74bb8373 Running StandingOrderSyncJob when order cycles added to a schedule via SchedulesController 2018-02-09 14:43:53 +11:00
Rob Harrington
ef5ff3a663 Adding job to re-sync standing orders when order cycles are added to or removed from schedules 2018-02-09 14:43:53 +11:00
Rob Harrington
d6e5c0b346 Adding extra scopes to StandingOrder model 2018-02-09 14:43:53 +11:00
Rob Harrington
107474fc74 Fixing standing_order_with_items factory 2018-02-09 14:43:53 +11:00
Rob Harrington
9a984963a7 Ensuring that only active standing orders are processed when order cycle opens 2018-02-09 14:43:53 +11:00
Rob Harrington
805baa18a9 Adding cancel/close button to standing order form 2018-02-09 14:43:53 +11:00
Rob Harrington
533b05384c Refactoring save bar on standing order create/edit form 2018-02-09 14:43:52 +11:00
Rob Harrington
9c2e67e953 Cancelling a standing order just changes the state, does not remove it from the page 2018-02-09 14:43:52 +11:00
Rob Harrington
522e646b36 Adding tooltips to standing order index actions 2018-02-09 14:43:52 +11:00
Rob Harrington
3d8dceb76a Displaying state of standing orders on index 2018-02-09 14:43:52 +11:00
Rob Harrington
b9316422d2 Adding method to determine state of standing orders 2018-02-09 14:43:52 +11:00
Rob Harrington
8d1899b13d Adding pause and unpause actions to standing orders 2018-02-09 14:43:52 +11:00
Rob Harrington
8ff9ffbc38 Adding controller actions and routes for pausing and unpausing a standing order 2018-02-09 14:43:52 +11:00
Rob Harrington
961df756c5 Adding paused_at column to standing orders 2018-02-09 14:43:52 +11:00
Rob Harrington
736de4826f Renaming cancelled_at column to canceled_at, for consistency 2018-02-09 14:43:52 +11:00
Rob Harrington
774245f540 Adding cancel button to standing orders index 2018-02-09 14:43:51 +11:00
Rob Harrington
a2ddf78842 Ensure red buttons have white text 2018-02-09 14:43:51 +11:00
Rob Harrington
f4ce0a4b81 Adding ConfirmDialog service 2018-02-09 14:43:51 +11:00
Rob Harrington
a23a0a233e Renaming info dialog stylesheet to more general dialogs.css 2018-02-09 14:43:51 +11:00
Rob Harrington
7dcf7ec5b0 Adding controller action and route for cancelling a standing order 2018-02-09 14:43:51 +11:00
Rob Harrington
b643829fe2 Standing Orders can be marked as cancelled 2018-02-09 14:43:51 +11:00
Rob Harrington
076a05f8a9 Adding spec for case when standing_order_orders aren't linked to an order cycle
This should never happen, but came up in specs
2018-02-09 14:43:50 +11:00
Rob Harrington
284103b6b6 Adding canceled_at column to standing_orders table 2018-02-09 14:43:50 +11:00
Rob Harrington
dd099eae54 Visualising standing order order state, still some spec failures 2018-02-09 14:43:50 +11:00
Rob Harrington
309781d5b1 Individual StandingOrder orders can be resumed from Standing Order index 2018-02-09 14:43:50 +11:00
Rob Harrington
2023a1a2fc Adding translations for StandingOrderOrder resume/cancel errors 2018-02-09 14:43:50 +11:00
Rob Harrington
d1ca9a6e14 Adding a #resume action to StandingOrderOrdersController 2018-02-09 14:43:49 +11:00
Rob Harrington
fc463fd608 Adding resume logic to StandingOrderOrder model 2018-02-09 14:43:49 +11:00
Rob Harrington
d89a05aec8 Adding an error message when cancellation of standing order order fails 2018-02-09 14:43:49 +11:00
Rob Harrington
6dd31a947e Show closing times for orders in standing order orders panel 2018-02-09 14:43:49 +11:00
Rob Harrington
5191877fbe BasicOrderCycleSerializer renders order open and close times 2018-02-09 14:43:49 +11:00
Rob Harrington
f6af5098b0 Using MomentJS to handle dates on bulk order management 2018-02-09 14:43:48 +11:00
Rob Harrington
7644f08d5c Individual StandingOrder orders can be cancelled from Standing Order index 2018-02-09 14:43:48 +11:00
Rob Harrington
27b22acd37 Fixing bug that caused references to stale DOM objects to be kept and used by Panels service
Was causing panels to break when used in conjuction with ng-repeat + filters
2018-02-09 14:43:48 +11:00
Rob Harrington
50b84c4ced Fixing typo in SO spec description 2018-02-09 14:43:48 +11:00
Rob Harrington
9160a3ff6b Displaying Order Cycle names in orders panel on standing orders index 2018-02-09 14:43:48 +11:00
Rob Harrington
a57815edbb Refactoring standing line item delete logic
Using StandingOrderForm rather than separate endpoint
2018-02-09 14:43:47 +11:00
Rob Harrington
4c754e2cdb Ensuring that new standing_line_items are added to orders and totals are updated 2018-02-09 14:43:47 +11:00
Rob Harrington
fcf2681abc WIP: Adding basic order panel to standing order index 2018-02-09 14:43:47 +11:00
Rob Harrington
ffcffb30ca Moving standing orders products panel template into separate partial 2018-02-09 14:43:47 +11:00
Rob Harrington
cdff1ef7b6 TEMP: Adding scopes for standing_order_orders 2018-02-09 14:43:47 +11:00
Rob Harrington
d95d9df0f1 Standing Order Orders can be cancelled 2018-02-09 14:43:47 +11:00
Rob Harrington
56fb50f644 Refactoring customer_search_override directive
Passing distributor_id into isolate scope, rather than pulling from separate element
2018-02-09 14:43:47 +11:00
Rob Harrington
f4cbd90400 Storing estimated prices for standing line items in the database 2018-02-09 14:43:46 +11:00
Rob Harrington
9baaf1efc9 Only running StandingOrder service 'after' callbacks for known standing orders
ie. those in byID or pristineByID
2018-02-09 14:43:46 +11:00
Rob Harrington
0196218d06 Conditionally loading an edit path for standing orders
ie. only if they have an id
2018-02-09 14:43:46 +11:00
Rob Harrington
b253373d4d Styling save button for standing order panels, and updating pristineByID array on update/save 2018-02-09 14:43:46 +11:00
Rob Harrington
8f71b56c26 Using same serializer for standing order index and edit pages 2018-02-09 14:43:46 +11:00
Rob Harrington
e8ee1dad04 Building params for adding new customer in the dialog directive, rather than generic Customers service 2018-02-09 14:43:45 +11:00
Rob Harrington
dc2551d881 Moving Schedules and ScheduleResource services to admin.resources module 2018-02-09 14:43:45 +11:00
Rob Harrington
c167780cad Adding auto-loading of schedules to Schedules service via constructor 2018-02-09 14:43:45 +11:00
Rob Harrington
534e69fde5 Including errors attribute from StandingOrderPrototype in spec 2018-02-09 14:43:45 +11:00
Rob Harrington
e92b17a341 Adding an error message when attempting to add duplicate variant to a standing order 2018-02-09 14:43:45 +11:00
Rob Harrington
1bd01c83a7 WIP: Adding panel for editing items to standing order index 2018-02-09 14:43:44 +11:00
Rob Harrington
05bc2bd293 All methods on StandingOrder service are instance methods, StandingOrders service loads instances of StandingOrder 2018-02-09 14:43:44 +11:00
Rob Harrington
6f4c9070f6 Adding StandingLineItemsController to handle addition and removal of SLIs from standing orders 2018-02-09 14:43:44 +11:00
Rob Harrington
198f63d0b3 Removing unrequired StatusMessage injection 2018-02-09 14:43:44 +11:00
Rob Harrington
a72da7036b buildItem and removeItem are instanceMethods standingOrder objects 2018-02-09 14:43:44 +11:00
Rob Harrington
3571b8c5fa Fixing date specification for order cycle spec 2018-02-09 14:43:43 +11:00
Rob Harrington
91a2274fe5 Adding link and dialog for creating a new standing order 2018-02-09 14:43:43 +11:00
Rob Harrington
0f2adaa8d2 Adding link to standing orders index to orders sub-menu 2018-02-09 14:43:43 +11:00
Rob Harrington
c3e071b0d1 Removing retry from stabilised customers codes feature spec 2018-02-09 14:43:43 +11:00
Rob Harrington
8c9765749e Ensuring that backorders are disabled when testing quantity capping for standing orders 2018-02-09 14:43:43 +11:00
Rob Harrington
6cf23b46c5 Fixing broken country and state selection for customer addresses 2018-02-09 14:43:42 +11:00
Rob Harrington
7fa55fe5c6 Adding spec to ensure that invalid changes to standing orders are not propagated to associated orders 2018-02-09 14:43:42 +11:00
Rob Harrington
21d8aafd97 Using numbers for state and countries ids in AddressSerializer 2018-02-09 14:43:42 +11:00
Rob Harrington
fbd3d99b1b OC feature spec: Using find for columns dropdown instead of first 2018-02-09 14:43:42 +11:00
Rob Harrington
f14c36ed6b Sending placement email when standing order order in placed on OC open 2018-02-09 14:43:42 +11:00
Rob Harrington
65db856054 Order confirmation emails are not sent for standing order orders. 2018-02-09 14:43:42 +11:00
Rob Harrington
8ab698d4dc Generating orders for standing orders ignores stock on hand at initialisation 2018-02-09 14:43:42 +11:00
Rob Harrington
5598a0d24f line_item.unit_value delegates to variant when quantity is 0 or final_weight_volume is missing 2018-02-09 14:43:41 +11:00
Rob Harrington
ef00dca5a0 Changing format of changes object in standing order placement job 2018-02-09 14:43:41 +11:00
Rob Harrington
7a308f1651 Updating letter_opener gem 2018-02-09 14:43:41 +11:00
Rob Harrington
3edfd07a40 WIP: adding method to StandingOrderPlacementJob to send emails 2018-02-09 14:43:41 +11:00
Rob Harrington
5e0186fa1f Standing Order Placement Job: capping line items quantities to available stock level 2018-02-09 14:43:41 +11:00
Rob Harrington
1c7e9923f9 Checking for sufficient stock takes variant overrides into account 2018-02-09 14:43:41 +11:00
Rob Harrington
a8928a0ccc Capping line item quantity at stock takes overrides into account 2018-02-09 14:43:40 +11:00
Rob Harrington
2aad722b4b WIP, SO placement job: preventing payments on standing orders from being processed when OC opens 2018-02-09 14:43:40 +11:00
Rob Harrington
9ad6dce2d6 WIP, SO placement job: processing orders to completion 2018-02-09 14:43:39 +11:00
Rob Harrington
178aadb311 WIP, SO placement job: Finding orders to be placed 2018-02-09 14:43:39 +11:00
Rob Harrington
6f629e112a WIP, OC open-close job: performing the job spawns StandingOrderPlacementJobs for each recently opened OC 2018-02-09 14:43:39 +11:00
Rob Harrington
5b25f63e44 WIP, OC open-close job: finding recently opened order cycles 2018-02-09 14:43:39 +11:00
Rob Harrington
140d62939a Adding processing marker column standing_orders_placed_at to order cycles 2018-02-09 14:43:39 +11:00
Rob Harrington
95a7fc8ef5 Initialisation and removal of standing order orders respects begins_at and ends_at contraints 2018-02-09 14:43:39 +11:00
Rob Harrington
3eff65f1f5 Finish refactoring of Standing Order Updaters, replacing with form class used by controller 2018-02-09 14:43:38 +11:00
Rob Harrington
2a3dc33f86 WIP: Pushing shipment and payment update logic down into separate methods 2018-02-09 14:43:38 +11:00
Rob Harrington
6ea4aac361 WIP: Refactoring StandingOrderUpdater into StandingOrderForm
Update logic coupled to update action on controller rather than changes to the model
2018-02-09 14:43:38 +11:00
Rob Harrington
0b35cb6619 Standing Order Updater handles changes to line item quantities 2018-02-09 14:43:38 +11:00
Rob Harrington
9468dcb406 Adding lib class to maintain standing order orders 2018-02-09 14:43:38 +11:00
Rob Harrington
d5349e7ad0 Standing Orders: adding association between orders and standing orders 2018-02-09 14:43:38 +11:00
Rob Harrington
a7132684e5 Standing Orders: create join table for linking orders with standing orders 2018-02-09 14:43:37 +11:00
Rob Harrington
7eac6e725a Standing Orders: adding order_cycles association to StandingOrder model 2018-02-09 14:43:37 +11:00
Rob Harrington
aeae0f245e Standing Orders: standing line items can be deleted from existing standing order 2018-02-09 14:43:37 +11:00
Rob Harrington
38d75d2b1c Standing Orders: adding routing and controller action for deleting standing line items 2018-02-09 14:43:37 +11:00
Rob Harrington
594bec1b37 StandingLineItems can be removed when creating a StandingOrder 2018-02-09 14:43:37 +11:00
Rob Harrington
1b711bcd46 Standing Orders can be edited 2018-02-09 14:43:37 +11:00
Rob Harrington
4ad6b1a65e Billing and Shipping addresses can be set on new standing orders 2018-02-09 14:43:37 +11:00
Rob Harrington
b701ca43f4 WIP: adding shiping and billing address to StandingOrder model 2018-02-09 14:43:37 +11:00
Rob Harrington
88563431b8 Module arguments passed to injection functions in consistent way 2018-02-09 14:43:36 +11:00
Rob Harrington
06fffb9ef7 SO Index: centering data in some columns 2018-02-09 14:43:35 +11:00
Rob Harrington
ab0728cd0b SO Index: Adding day to standing order dates 2018-02-09 14:43:35 +11:00
Rob Harrington
44d7537744 SO Index: Adding items column 2018-02-09 14:43:34 +11:00
Rob Harrington
6fadeacf0e SO Index: Adding begins_on and ends_on columns 2018-02-09 14:43:34 +11:00
Rob Harrington
af9376b60c SO Index: Adding column dropdown 2018-02-09 14:43:34 +11:00
Rob Harrington
a395f183f9 SO Index: adding spec for changing shops 2018-02-09 14:43:34 +11:00
Rob Harrington
7c57d3d4c6 SO Index: standing orders can be filtered using quick search 2018-02-09 14:43:34 +11:00
Rob Harrington
bbd43f7026 SO Index: User must select a shop first in order to load relevant standing orders 2018-02-09 14:43:34 +11:00
Rob Harrington
a94742e4db Ensuring ransack restrictions are applied in StandingOrderController#collection 2018-02-09 14:43:33 +11:00
Rob Harrington
24cb823c90 Loading managed shops into standing orders index, to be used for filtering 2018-02-09 14:43:33 +11:00
Rob Harrington
8372317a8f Enterprise User can view basic listing of standing orders 2018-02-09 14:43:33 +11:00
Rob Harrington
ef08fd4bb3 Adding dedicated standing order serializer for index 2018-02-09 14:43:33 +11:00
Rob Harrington
1d58ef55f7 Calling Standing Orders index controller action using json returns serialized data 2018-02-09 14:43:33 +11:00
Rob Harrington
a1ccf8a28e Adding initial defaults for standing orders index column visibility 2018-02-09 14:43:32 +11:00
Rob Harrington
7ab05cf857 Basic AngularJS controller and service for loading StandingOrders 2018-02-09 14:43:32 +11:00
Rob Harrington
c18c1c67d1 Adding visibility permissions for standing orders 2018-02-09 14:43:32 +11:00
Rob Harrington
cd2d73810d StandingOrderResource can handle index action 2018-02-09 14:43:32 +11:00
Rob Harrington
91917886a8 Adding basic routing and templates for standing orders index 2018-02-09 14:43:32 +11:00
Rob Harrington
8bbc0b7790 Adding translations to standing order form 2018-02-09 14:43:32 +11:00
Rob Harrington
2e83ab80cf Tweaking layout of details section of standing order creation form 2018-02-09 14:43:32 +11:00
Rob Harrington
bba4b54f9b Adding a wizard progress indicator to standing order creation form 2018-02-09 14:43:31 +11:00
Rob Harrington
897eb11512 Standing Orders: form split into ngForm elements with staggered validation 2018-02-09 14:43:31 +11:00
Rob Harrington
ac5fe6a9fb Each section of standing order form has a title 2018-02-09 14:43:31 +11:00
Rob Harrington
29760d6419 Renaming 'items' partial as 'products' 2018-02-09 14:43:31 +11:00
Rob Harrington
1808e3881f Making standing order creation more like a wizard 2018-02-09 14:43:31 +11:00
Rob Harrington
a9ea042791 Splitting details section of standing order form out into partial 2018-02-09 14:43:31 +11:00
Rob Harrington
6d5ca1501c Moving standing order form into separate partial 2018-02-09 14:43:31 +11:00
Rob Harrington
946046e53b Moving action for estimating standing_line_item prices into StandingLineItemController#build 2018-02-09 14:43:31 +11:00
Rob Harrington
71b84d490e Adding validation contraints to standing order associations 2018-02-09 14:43:30 +11:00
Rob Harrington
6bd5a895b3 Moving InfoDialog into admin.utils module 2018-02-09 14:43:30 +11:00
Rob Harrington
e661430cc9 StandingLineItems added to StandingOrder are saved
Adding some additional validation
2018-02-09 14:43:30 +11:00
Rob Harrington
415955e7b3 SO: Adding variants to a new standing order, price estimate provided 2018-02-09 14:43:30 +11:00
Rob Harrington
5aa993f5b4 Moving select2 config for variant-autocomplete into a directive 2018-02-09 14:43:30 +11:00
Rob Harrington
6934b87816 SO: Adding basic interface for Standing Order creation 2018-02-09 14:43:29 +11:00
Rob Harrington
e4de7e262d SO: Adding StandingLineItem model 2018-02-09 14:43:29 +11:00
Rob Harrington
d711c321b6 SO: Adding Standing Order Model 2018-02-09 14:43:29 +11:00
Rob Harrington
733dc76c6c Order Cycles can be assigned to schedules via new/edit form 2018-02-09 14:43:29 +11:00
Rob Harrington
4195bd6cd8 Order Cycles can be filtered by Schedule 2018-02-09 14:43:29 +11:00
Rob Harrington
8c0bad3115 Schedules can be deleted from OC index 2018-02-09 14:43:28 +11:00
Rob Harrington
a9b9cbf4bd Restoring 'Loading' flash to order cycle index 2018-02-09 14:43:28 +11:00
Rob Harrington
33e5601658 Adding translation for schedule without OCs error 2018-02-09 14:43:28 +11:00
Rob Harrington
2a1ca1c206 Using angular-ui sortable instead of pure jQuery, refactoring logic around including blanks in select2s 2018-02-09 14:43:28 +11:00
Rob Harrington
357040f67a Enterprise User can create and update schedules via OC index 2018-02-09 14:43:28 +11:00
Rob Harrington
920f52e112 Adding schedules to Order Cycles interface 2018-02-09 14:43:28 +11:00
Rob Harrington
a25f2141a5 Adding Order Cycle Schedules join table 2018-02-09 14:43:27 +11:00
Rob Harrington
c51b956b01 Adding Schedule model 2018-02-09 14:43:27 +11:00
Rob Harrington
0d845b0fd6 Adding column toggling interface to Order Cycles index 2018-02-09 14:43:27 +11:00
Rob Harrington
fe9f147ff0 Adding ability to filter OC index by OC name or 'involved' enterprise 2018-02-09 14:43:27 +11:00
Rob Harrington
2a5f598fb0 Angularising Order Cycles Index 2018-02-09 14:43:20 +11:00
Maxime Lalisse
bf69ed0008 Add and namespace a missing translation key 2018-02-09 11:57:44 +11:00
Maxime Lalisse
8bd952ed56 Add i18n for defaced elements in admin_product_tabs 2018-02-09 11:57:44 +11:00
Maxime Lalisse
9a3f61904b Add translation keys for admin_product_tabs 2018-02-09 11:57:44 +11:00
Godfrey Chan
fbc5318a7b Add Skylight instrumentation
If you’re not already familiar with [Skylight](https://www.skylight.io),
it is a smart profiler for Rails apps. Skylight makes it easy to
pinpoint performance issues in Rails applications.

We work on a lot of open source projects ourselves, and in our
experience it can be pretty hard to get contributors to work on
application performance issues. Few contributors consider working
on performance problems, and the ones that might be interested may
not even know where to start.

By making performance information more accessible, we hope to
inspire potential contributors to tackle slow parts of your app,
and have a good way to see if their contributions helped.

Local deployments that are interested in this can request an API
token from https://www.skylight.io/oss and set it in
`config/application.yml` (if no token is set, it will log a message to
`log/skylight.log` but won't otherwise prevent the app from working
normally).
2018-02-07 11:37:30 -08:00
Matt-Yorkley
41ce7047cc Tidy up order cycle spec 2018-02-07 17:48:16 +11:00
Matt-Yorkley
f28471e456 Fixed datepicker button intermittent failure 2018-02-07 17:48:16 +11:00
Matt-Yorkley
4cb9e3a3f1 Datepicker CSS tweaks 2018-02-07 17:48:16 +11:00
Matt-Yorkley
2f6a249b5f Fix missing datepicker icon 2018-02-07 17:48:16 +11:00
Pau Perez
0634735288 Adjust Codeclimate config to ignore Rails patch
Since it is a file copied from Rails 4, we want to keep it in its
original state and not refactor it.
2018-02-07 16:21:16 +11:00
Pau Perez
719c45b408 Apply Rails 4 patch at boot time not only specs
This makes this patch available also for things like database-related
rake tasks. It moves the patch to an initializer.
2018-02-07 16:21:16 +11:00
Maikel Linke
b70edd5424 Enabling non-privileged postgres users to run specs
Addressing issue #245.

A combination of fixtures and foreign key constraints requires the postgres
user to be superuser. Otherwise an attempt to disable constraints fails.
This got fixed in Rails 4 and this patch brings the same behaviour back to
Rails 3. It will allow us to run the specs with a nosuperuser postgres user.

See:
 - https://github.com/matthuhiggins/foreigner/issues/61
 - 9bb27f7ffe
2018-02-07 16:21:16 +11:00
Aaron Hursh
a6498c2f96 Removed ng-disabled conditional from submit button on admin customers index. 2018-02-07 15:09:07 +11:00
Maxim Colls
5db1559f28 Fixed spec to use unuppercased states 2018-02-07 13:35:50 +11:00
Maxim Colls
09f98307f4 Do not upcase State abbreviation 2018-02-07 13:35:50 +11:00
Rob Harrington
56be7b1d46 Fix spec to handle non-deterministic ordering 2018-02-07 11:45:48 +11:00
Rob Harrington
b2f3477261 Change unused creation_date translation key back to confirmation_date
See 22eae753fe for original change
2018-02-07 11:42:38 +11:00
Matt-Yorkley
14b73149be Remove stale form validation messages when showing new confirmation sent message 2018-02-07 10:41:54 +11:00
Matt-Yorkley
0ab7d95607 Remove mention of confirmation email from enterprise creation wizard 2018-02-07 10:41:53 +11:00
Matt-Yorkley
ee08dcfeb4 Use owner as contact if user record doesn't exist 2018-02-07 10:41:53 +11:00
Matt-Yorkley
b893dea810 Make sure userSelect directive uses our Admin::UserSerializer instead of base Spree api view 2018-02-07 10:41:53 +11:00
Matt-Yorkley
ec5ce45850 Change confirmation email wording 2018-02-07 10:41:53 +11:00
Matt-Yorkley
9afb97fa0f Show contact email without full permissions 2018-02-07 10:41:53 +11:00
Matt-Yorkley
676abe0ced Remove serialized contact attributes 2018-02-07 10:41:53 +11:00
Matt-Yorkley
73d38cb91b Re-add text version of confirmation email for accessibility 2018-02-07 10:41:53 +11:00
Matt-Yorkley
fffae46a63 Remove enterpriseRoles from enterprsies controller 2018-02-07 10:41:53 +11:00
Matt-Yorkley
6ed91cab1f Remove old translation keys 2018-02-07 10:41:53 +11:00
Matt-Yorkley
cc5d0c35dd Refactor enterprise contact user assignment 2018-02-07 10:41:53 +11:00
Matt-Yorkley
c34570154c Use contact model in printed tickets 2018-02-07 10:41:53 +11:00
Matt-Yorkley
a5940e1641 Fix user controller spec 2018-02-07 10:41:53 +11:00
Matt-Yorkley
39f0c5b5b0 Rename contact name field and revert contact name specs 2018-02-07 10:41:53 +11:00
Matt-Yorkley
abb5adec43 Enterprise managers UI specs 2018-02-07 10:41:53 +11:00
Matt-Yorkley
525cb4826f Code review refactoring 2018-02-07 10:41:53 +11:00
Matt-Yorkley
fde0aba96c Feedback when user changes email addess 2018-02-07 10:41:53 +11:00
Matt-Yorkley
ff18fd25f1 Adjust Discourse login for user confirmations 2018-02-07 10:41:53 +11:00
Matt-Yorkley
9248ac05ac Adjustments for failing specs 2018-02-07 10:41:53 +11:00
Matt-Yorkley
a066c6391d Adjust injection data namespacing 2018-02-07 10:41:53 +11:00
Matt-Yorkley
4d11485283 Use receives_notifications flag for enterprise contact 2018-02-07 10:41:53 +11:00
Matt-Yorkley
9e270690ef Remove enterprise email
A user with the same email address is receiving notifications now.
If the email address is invalid, the owner receives notifications.
2018-02-07 10:41:53 +11:00
Matt-Yorkley
15b781b271 Update enterprise managers and contact role 2018-02-07 10:41:52 +11:00
Matt-Yorkley
5dc8f21b7b Show confirmed status in enterprise managers UI 2018-02-07 10:41:52 +11:00
Matt-Yorkley
9ccb3ee80b Add receives_notifications flag to enterprise_roles 2018-02-07 10:41:52 +11:00
Matt-Yorkley
27de66b055 Owner's permissions can't be deleted 2018-02-07 10:41:52 +11:00
Matt-Yorkley
ba98c7e2c5 Rewrite enterprise contact functionality 2018-02-07 10:41:52 +11:00
Matt-Yorkley
22eae753fe Remove enterprise confirmations 2018-02-07 10:41:52 +11:00
Pierre de Lacroix
d832d850fe Revert removed translations for Enterprise mails 2018-02-07 10:41:52 +11:00
Matt-Yorkley
aead867ea0 Set all current users to confirmed 2018-02-07 10:41:51 +11:00
Matt-Yorkley
97f5022bdd Show signup message in modal wihout redirect 2018-02-07 10:41:51 +11:00
Matt-Yorkley
0cb7a555d3 Adjust confirmation template 2018-02-07 10:41:51 +11:00
Maikel Linke
52b7872a55 Simplify conditionals 2018-02-07 10:41:51 +11:00
Matt-Yorkley
522aaee1a3 Update login modal for resending confirmations 2018-02-07 10:41:51 +11:00
Matt-Yorkley
179cf6e484 Tidy up confirmation migrations 2018-02-07 10:41:51 +11:00
Matt-Yorkley
28ded1f0c2 Adjust user signup feedback 2018-02-07 10:41:51 +11:00
Pierre de Lacroix
7d971fc39d Add UserConfirmationsController spec 2018-02-07 10:41:51 +11:00
Pierre de Lacroix
4f0b20e8ad Better tests 2018-02-07 10:41:51 +11:00
Pierre de Lacroix
a6f2ee1367 Add migration to confirm already confirmed email addresses 2018-02-07 10:41:51 +11:00
Pierre de Lacroix
eb1c598a6c Fix tests 2018-02-07 10:41:51 +11:00
Pierre de Lacroix
4706bf0528 Remove changes on FR locale file 2018-02-07 10:41:51 +11:00
Matt-Yorkley
969b6caa96 Code cleanup 2018-02-07 10:41:51 +11:00
Matt-Yorkley
69ea1e6d26 Set test users to confirmed by default 2018-02-07 10:41:51 +11:00
Pierre de Lacroix
91704d9df7 Create user confirmation email 2018-02-07 10:41:51 +11:00
Pierre de Lacroix
dbbc2ddb1c Add confirmable email to user model 2018-02-07 10:41:51 +11:00
Pau Pérez Fabregat
99729457cc Merge pull request #2063 from coopdevs/autocorrect-cop
Autocorrect rubocop Layout/BlockEndNewline cop
2018-02-05 08:50:58 +01:00
Pau Pérez Fabregat
5a58294bc6 Merge pull request #2042 from erose357/master
addresses issue #1275
2018-02-02 13:41:23 +01:00
Enrico Stano
398b3bbd8b Merge pull request #1960 from coopdevs/remove-warning
Fix payment_method_decorator boot-time warning
2018-02-02 10:43:51 +01:00
Pau Perez
6cb038c362 Autocorrect rubocop Layout/BlockEndNewline cop 2018-02-01 09:52:53 +01:00
Pau Pérez Fabregat
cc40948783 Merge pull request #2051 from coopdevs/regenerate-knapsack-report
Regenerate Knapsack report
2018-01-31 15:04:30 +01:00
Enrico Stano
00bdcd3948 Merge pull request #2045 from coopdevs/use-symbol-hash-syntax
Enable HashSyntax rubocop cop with symbol style
2018-01-31 09:30:06 +01:00
Matt-Yorkley
c860ffc176 Adjust use of non-translatable open/closed icons 2018-01-24 15:33:26 +11:00
Pau Perez
8664411880 Disable knapsack report generation again
No need to enable it to regenerate the report again until Knapsack
itself tells us.
2018-01-23 09:21:56 +01:00
Pau Perez
f17f1008e3 Update knapsack report file with latest CI values 2018-01-23 09:21:10 +01:00
Pau Perez
a2828f3b9a Regenerate Knapsack report
It's already asking for it in the CI output
2018-01-23 08:06:53 +01:00
Pau Perez
cbfdfb43e3 Enable HashSyntax rubocop cop with symbol style
This enforces the ruby 1.9 symbol hash syntax and consistency among the
style of the keys.

  # bad
  {:a => 1, :b => 2}
  {c: 2, 'd' => 3} # should just use hash rockets

  # good
  {a: 1, b: 2}
  {:c => 3, 'd' => 4}

The .rubocop-todo.yml is also updated to keep track of the existing
violations.
2018-01-20 12:50:50 +01:00
Matt-Yorkley
23e672aef9 Add updated globe icon to mobile view 2018-01-19 10:56:11 +00:00
Matt-Yorkley
6d9cc7e29d Fix account page locale 2018-01-18 10:22:40 +11:00
Matt-Yorkley
8a47788a09 Remake OFN icon font 2018-01-18 10:22:40 +11:00
Matt-Yorkley
afed5ab666 Refector spec 2018-01-18 10:22:40 +11:00
Matt-Yorkley
357eda8c19 Adjustments for failing specs 2018-01-18 10:22:40 +11:00
Matt-Yorkley
f18401d183 Language switcher frontend 2018-01-18 10:22:40 +11:00
Matt-Yorkley
4ea91d14f9 Template I18n changes 2018-01-17 12:03:27 +11:00
Pau Perez
f57661b13f Fix payment_method_decorator boot-time warning
Removes the annoying message "warning: already initialized constant
Spree::PaymentMethod::DISPLAY" that appears 4 times when booting the
app.

We are declaring said constant exactly as our Spree version does so
there's no point on repeating work.
2018-01-15 12:50:05 +01:00
Pau Pérez Fabregat
ad25c1d1b2 Merge pull request #2033 from coopdevs/add-setup-script
Add setup script
2018-01-15 12:05:19 +01:00
Pau Perez
87af5dcee5 Point to rbenv and nodenv from setup script
Show the appropriate links when the Ruby and Node dependencies are not
met. This will make it easier for newcomers to install them.
2018-01-12 08:22:50 +01:00
Pau Perez
106871b956 Check node version and install npm packages 2018-01-11 14:14:08 +01:00
Pau Perez
4d25abcfce Add setup script
It aims to aid new open source contributors on setting up their dev
env by means of a single command with meaningful output.

Although ofn-install ansible scripts also work for development we don't
want to add too much burden to those single-time beginner contributions.
2018-01-11 14:14:08 +01:00
Rob Harrington
2ccdf3c97a Use upstream and origin as remote names
Also fixed a couple of typos
2018-01-11 14:30:08 +11:00
Rob Harrington
89bd9c8038 Update CONTRIBUTIONS.md to reflect current processes 2018-01-11 14:30:08 +11:00
Enrico Stano
88627dc837 Merge pull request #2038 from boveus/master
Update README.md
2018-01-10 12:17:21 +01:00
Brandon Stewart
8ca57b0705 Update README.md 2018-01-09 14:02:27 -07:00
Brandon Stewart
c7db283e8c Update README.md 2018-01-09 14:00:07 -07:00
erose357
83ca3b7b8b Adds a css rule to target the logo in .footer-local and padding between the logo and open source info at the bottom 2018-01-09 12:54:41 -07:00
Brandon Stewart
830699d2b8 Update README.md 2018-01-09 10:29:02 -07:00
Brandon Stewart
f822e658c4 Update README.md 2018-01-09 10:23:51 -07:00
Brandon Stewart
8817a1afb7 Update README.md 2018-01-09 10:23:30 -07:00
Brandon Stewart
693adf181e Update README.md 2018-01-09 10:21:24 -07:00
Brandon Stewart
f269f13b09 Update README.md 2018-01-08 11:50:44 -07:00
Matt-Yorkley
9845258a25 Merge pull request #2035 from Matt-Yorkley/uk/rubocop_fix
Update rubocop.yml
2018-01-05 20:16:44 +00:00
Enrico Stano
edbed2c8d3 Merge pull request #1984 from coopdevs/fix/api-key-taxons
Disable api auth as there is no Spree api key set
2018-01-05 10:31:36 +01:00
Matt-Yorkley
8e0f2d2500 Merge pull request #2037 from Matt-Yorkley/uk/codeclimate_checks
Codeclimate yml update
2018-01-05 01:37:06 +00:00
Matt-Yorkley
e022504c26 Codeclimate yml update 2018-01-04 17:10:55 +00:00
Matt-Yorkley
62e4cbd052 Update rubocop.yml 2018-01-04 16:01:06 +00:00
Enrico Stano
70ae59550d Merge pull request #2032 from Matt-Yorkley/uk/codeclimate_migrations
Adjust codeclimate engine for migrations folder
2018-01-03 13:48:47 +01:00
Lynne
f74af8fa2d Merge pull request #2034 from lin-d-hop/translations-uk
Manual uk translation update
2018-01-03 06:00:07 +01:00
lin-d-hop
82d1b57005 Not updated from transifex so manually commiting 2018-01-03 03:40:04 +00:00
Lynne
c32aacc1b3 Delete en-GB.yml
Superseded by en_GB.yml
2018-01-03 03:29:52 +00:00
Matt-Yorkley
523b4045bf Adjust codeclimate engine for migrations folder 2018-01-02 13:54:41 +00:00
Enrico Stano
8e4e273b7c Merge pull request #1994 from openfoodfoundation/transifex
Transifex
2017-12-22 16:36:44 +11:00
Enrico Stano
816297e22f Merge pull request #2022 from ltrls/add-order-print-ticket-feature-test
Add feature test for the Spree::Admin::OrdersController print_ticket action
2017-12-22 15:07:17 +11:00
Pau Perez
72889b5c36 Stub current_user instead of api key's user 2017-12-21 10:24:29 +11:00
Pau Perez
0f0216fe79 Upgrade spree to get our latest patch 2017-12-21 10:24:29 +11:00
Pierre de Lacroix
42433d1ad4 Add feature test for the Spree::Admin::OrdersController print_ticket action 2017-12-20 23:01:18 +01:00
Pau Perez
52533fc04c Rely on Spree's default value for requires_auth 2017-12-20 17:25:23 +11:00
Pau Perez
bb0223877c Remove unused arguments and reduce object creation 2017-12-20 17:25:23 +11:00
Pau Perez
5eb1fcddbb Remove dependency on TestingSupport by inlining 2017-12-20 17:25:23 +11:00
Pau Perez
c646eb3939 Disable api auth as there is no Spree api key set
Although Spree::Api::Config[:requires_authentication] is set to false by
default for some unknown reason if not done explicitly Spree still
returns it as false.

This amends the change done in a87c89c83d,
which introduced the bug. As there is no Spree api key set the auth
fails when getting taxons.
2017-12-20 17:25:23 +11:00
Enrico Stano
a313c99370 Merge pull request #2005 from coopdevs/upgrade-spree-fork-version
Upgrade spree's fork to latest commit
2017-12-20 17:23:48 +11:00
Enrico Stano
0f84d9f02e Merge pull request #2004 from coopdevs/is-this-needed
Remove unused Enterprise scopes
2017-12-20 16:59:15 +11:00
Enrico Stano
900a9c6145 Merge pull request #2000 from coopdevs/issue-template-improvement
Mention screenshot in the issue template
2017-12-20 16:48:54 +11:00
Pau Perez
5b33cbe9aa Upgrade spree's fork to latest commit
Needed to get
3289b5e31c
2017-12-20 16:37:14 +11:00
Enrico Stano
114ce3b764 Merge pull request #1940 from coopdevs/improve-readability-shop
Improve readability of shop's code
2017-12-20 16:28:53 +11:00
Enrico Stano
660d3f326f Remove unused Enterprise scopes 2017-12-20 16:00:35 +11:00
Pau Perez
b8d51ae0de Mention screenshot in the issue template
For things like translations it's enough sharing a screenshot when
reporting a bug. See
https://github.com/openfoodfoundation/openfoodnetwork/issues/1999
2017-12-20 10:16:53 +11:00
Enrico Stano
0bdda6387a Merge pull request #1996 from coopdevs/add-issue-template
Create issue template
2017-12-19 18:00:04 +11:00
Pau Perez
4fbdbb1aa2 Link to placeholder feature template
We'll write the template later on
2017-12-19 15:26:21 +11:00
Pau Perez
72ddcb4fff Create issue template
It assumes most of the times issues will be reported to keep track of
bugs.
2017-12-19 11:07:29 +11:00
Transifex-Openfoodnetwork
50ef2de5f9 Updating translations for config/locales/fr.yml 2017-12-15 20:06:43 +11:00
Transifex-Openfoodnetwork
55d3ee1af0 Updating translations for config/locales/pt.yml 2017-12-13 21:19:42 +11:00
Transifex-Openfoodnetwork
422166441e Updating translations for config/locales/en_US.yml 2017-12-09 02:29:48 +11:00
Transifex-Openfoodnetwork
9d3f85628c Updating translations for config/locales/nb.yml 2017-12-08 18:44:22 +11:00
Pierre de Lacroix
669d9c3c66 Fix translations on account page 2017-12-06 15:21:19 +11:00
Enrico Stano
dcb406d246 Merge pull request #1986 from andypalmer/github_protocol_warning
Change github definition to remove insecure protocol warning.
2017-12-04 21:49:05 +11:00
Andy Palmer
cadad28b0c Change github definition to remove insecure protocol warning. Consistently use 1.9.3 hash syntax 2017-12-04 16:50:36 +11:00
Enrico Stano
01b0a033fd Merge pull request #1904 from oeoeaio/spree-test-config
Use Spree's approach for preventing config caching when testing
2017-12-04 15:57:11 +11:00
Pierre de Lacroix
0fb66ab258 Fix CodeClimate issues 2017-12-01 13:37:30 +11:00
Pierre de Lacroix
a49c21cfd1 Add instance switch to enable number localization 2017-12-01 13:37:24 +11:00
Pierre de Lacroix
f67a8c1f2d Add tests 2017-12-01 13:37:24 +11:00
Pierre de Lacroix
f4624ead42 Make all products reload when updating in bulk edit 2017-12-01 13:37:24 +11:00
Pierre de Lacroix
2cd570383f Use localize_number in models 2017-12-01 13:37:24 +11:00
Pierre de Lacroix
920900b619 Add Spree::LocalizedNumber module 2017-12-01 13:37:24 +11:00
Pau Perez
e98d934a67 Include localization files as documented in gem
I followed the Usage help in
https://github.com/derekprior/momentjs-rails.
2017-11-29 10:13:05 +11:00
leandroalemao
31a846b9c3 Refactor _i18n_script.html.haml file and add new momentjs internationalisation files 2017-11-29 10:13:05 +11:00
leandroalemao
5eaea28401 Switch momentjs internationalisation according to I18n locale 2017-11-29 10:13:05 +11:00
Pierre de Lacroix
50ef902adb Add missing tooltip in products' bulk edit page 2017-11-23 11:31:41 +11:00
Pierre de Lacroix
75b6a078c6 Add missing translation 2017-11-23 11:31:41 +11:00
Pierre de Lacroix
c0c93c172e Add tooltips in products bulk edit page 2017-11-23 11:31:41 +11:00
Pau Perez
ed18244070 Remove TODO in favour of an issue in Github
It has become the issue
https://github.com/openfoodfoundation/openfoodnetwork/issues/1961
2017-11-23 11:12:17 +11:00
Pierre de Lacroix
e13063e0c6 Fix before_filter for Spree::Admin::OrdersController#print_ticket 2017-11-23 11:01:41 +11:00
Rob Harrington
6c38997010 Fix 1664: product tag rules not working
Caused by a combination of: fe7bd5e2cd and 38d3b446cc

Have added/tweaked specs to prevent this from happening again
2017-11-15 10:26:24 +11:00
Pau Perez
0e01c0d69b Turn TODO into issue #1957
TODOs that live in the code can't be prioritized and tend to be
forgotten.
2017-11-15 09:44:11 +11:00
Pau Perez
caab3ea74d Add spree user as admin of Enterprise 2 in seed 2017-11-15 09:42:21 +11:00
Lynne
c543dff2e1 Merge pull request #1956 from coopdevs/improve-pr-template
Add special keyword syntax to close issue from PR
2017-11-14 14:16:08 +01:00
Pau Perez
92badfd88c Add special keyword syntax to close issue from PR
We want the issue to be closed when the PR gets merged but we always
forget to add the "magic" comment as described in
https://help.github.com/articles/closing-issues-using-keywords/.
2017-11-14 09:02:52 +01:00
Lynne
dca64e6939 Merge pull request #1944 from lin-d-hop/master
Adding UK About pages to menus
2017-11-10 16:33:58 +01:00
Saimon Moore
a9c4d27d5e Undo i18n_fallbacks change to production.rb 2017-11-10 12:30:24 +11:00
Saimon Moore
610c2f9519 Ensure en is an I18n fallback in all environments
Since `en` is considered as the main fallback for all locales
ensure that it is present in all environments.

Note: Setting `config.i18n.fallbacks` to `true` means use the default locale
which means that if a particular instance is not using an `en` based locale
(the parent `en` locale is automatically derived as a fallback) then `en` will
not be available as a fallback.
2017-11-10 12:30:24 +11:00
Saimon Moore
05d757e7c4 Ensure we have min i18n fallbacks
This setting defines which locales will be exported to the frontend.
In general, ofn currently functions under a single locale
(which is also the default locale) but all translations are made from
the `en` locale.

The current process of ensuring translations are translated and make
their way into code is manual and prone to issues so occasionally
translations for keys in the default locale of a particular instance
are not deployed and the UI displays `missing translation` messages.

In these cases, it is far friendlier for the user to see fallbacks to
`en` rather than these errors so this commit ensure that at the very
least apart from the current default locale, `en` is also made available
and as such will be exported to the frontend so that it's translations
are available as a fallback in JS land.

I18n fallback config was already enabled in both frontend and backend.
Until now, available locales may not have been set (determined by the
`AVAILABLE_LOCALES` env var) and the translations for `en` not therefore
be present in the frontend for fallback to actually work.

This commit will ensure that a fallback to `en` is always possible in the
case of missing translations.
2017-11-10 12:30:24 +11:00
Maxim Colls
31a2453882 Bootstrap angular module in new_variant form 2017-11-10 09:37:36 +11:00
Rob Harrington
5febd0a0d6 Restructure flaky customer spec 2017-11-10 08:47:12 +11:00
Rob Harrington
694f1e9b25 Update knapsack report 2017-11-10 08:47:12 +11:00
Andy Palmer
131bf842a9 Update matchers to non-deprecated protocol 2017-11-10 08:47:12 +11:00
Andy Palmer
8ec1c2e04a No longer use expensive page.evaluate_script for imperative methods 2017-11-10 08:47:12 +11:00
Andy Palmer
e94dc257a1 We actually need to restart the driver, not the session 2017-11-10 08:47:12 +11:00
Andy Palmer
3bd4fc59d4 We reset the phantom js driver after each context to prevent it memory leaking and dying 2017-11-10 08:47:12 +11:00
Andy Palmer
7b8463b03a PhantomJS no longer crashes due to too specific selector 2017-11-10 08:47:12 +11:00
Rob Harrington
00e7fc1c0d Bump capybara version 2017-11-10 08:47:12 +11:00
Rob Harrington
2ca20ad701 Bump poltergeist version to 1.16.0 2017-11-10 08:47:12 +11:00
Maikel Linke
775da82072 Add waiting conditions to spec 2017-11-10 08:47:12 +11:00
Maikel Linke
162b392004 Use expect syntax, correct spec description 2017-11-10 08:47:12 +11:00
Maikel Linke
26bedf0523 Make title matcher more robust 2017-11-10 08:47:12 +11:00
Maikel Linke
ff3ee62509 Remove old comment 2017-11-10 08:47:12 +11:00
Maikel Linke
9c2a78adf2 Avoid warnings, use expect syntax 2017-11-10 08:47:12 +11:00
Maikel Linke
5a767ba3ef Avoid warning, use new syntax 2017-11-10 08:47:12 +11:00
Rob Harrington
691d642721 Use url helper instead of string to define expected url 2017-11-10 08:47:12 +11:00
Rob Harrington
7dbfc3740d Revert "Add workaround to pass Spree core tests in Travis"
This reverts commit 9cdec737078caa6eb5a90480cabb6ca477ab597b.
2017-11-10 08:47:12 +11:00
Rob Harrington
b2897d7feb Reset Spree::Config.allow_backorders to original value in spec 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
b18177c215 Add workaround to pass Spree core tests in Travis 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
cec0a8c2e7 Specify page object for Capybara#find methods 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
412de318ed Manually disable backorders in failing features 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
92cc7a4648 Another try for failing feature 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
96c0481e17 Fix intermittently failing product distribution feature 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
5dd7ddc288 Refactor base controller with new rspec syntax 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
ea91a82f30 Try to fix shopping cart failing feauture in Travis 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
8e10269b50 Try to fix intermittently failing test for product distribution 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
dae74666c5 Add missing 'type: :request' for request spec 2017-11-10 08:47:12 +11:00
Julius Pabrinkis
94e31e35ba Fix Spree::Admin::BaseController related issues 2017-11-10 08:47:12 +11:00
Rob Harrington
c835b4eb1a Replacing stub_model objects with actual factory generated instances 2017-11-10 08:47:12 +11:00
Rob Harrington
ef9e43fbd3 Replacing mock_model objects with instance_doubles 2017-11-10 08:47:12 +11:00
Rob Harrington
f083433854 Explicitly specifying 'type: :helper' for all helper specs 2017-11-10 08:47:12 +11:00
Rob Harrington
9052b1c3db A few updates to spec where 'be true' and 'be false' didn't cut it 2017-11-10 08:47:12 +11:00
Rob Harrington
59578a73af Changing all references to 'be_true' and 'be_false' to 'be true' and 'be false'
See next commit for changes where this substitution was broken
2017-11-10 08:47:12 +11:00
Rob Harrington
c691e260cf Rspec matcher enqueue_job for Delayed::Job supports block expectations 2017-11-10 08:47:12 +11:00
Rob Harrington
82072c8970 Explicitly specifying 'type: :controller' for all controller specs 2017-11-10 08:47:12 +11:00
Rob Harrington
d0c52ac176 Updating outdated guard gems 2017-11-10 08:47:12 +11:00
Rob Harrington
6811a62568 Updating RSpec Gems 2017-11-10 08:47:12 +11:00
Buildkite
8653d03969 Merge remote-tracking branch 'origin/master' into HEAD 2017-11-09 13:49:39 +00:00
lin-d-hop
90d5a04368 Adding UK About pages to menus 2017-11-09 11:06:58 +00:00
Pau Perez
84e4ebef08 Do not notify Bugsnag of a cache miss
It's not the responsibility of a error tracking software to track
neither cache misses nor logs. That is what log monitoring is for.
2017-11-09 10:22:31 +01:00
Pau Perez
98603c4042 Do not test private methods 2017-11-09 10:22:31 +01:00
Pau Perez
26a4ee0171 Do not stub object under test 2017-11-09 10:22:31 +01:00
Pau Perez
4f03a2d25c Remove unnecessary require 2017-11-09 10:22:31 +01:00
Pau Perez
6a830a3843 Isolate ArraySerializer case in injection helper
This makes this special case with the ArraySerializer stand out so that
the reader notices it.
2017-11-09 10:22:30 +01:00
Pau Perez
3ffd049135 Remove commented out code 2017-11-09 10:22:30 +01:00
Rob Harrington
e6d1b38b82 Remove upgrade_bundler script by reverting 250062bd2, 3f2299e52 and 5dfac10599 2017-11-09 19:46:41 +11:00
Rob Harrington
f8a892faf2 Remove upgrade_bundler script by reverting 250062bd2, 3f2299e52 and 5dfac10599 2017-11-09 18:24:22 +11:00
Pierre de Lacroix
54e141489a Add noindex meta tag for invisible shops and staging environment 2017-11-09 12:04:27 +11:00
Pau Perez
e64fd1d308 Lower log level in prod to :info so we can debug
Otherwise, there are no log lines for any request, which makes it
impossible to find out anything about the app in production.

Obviously this increases the size of the log files but this has to be
  dealt with log rotation. The data is our most important asset.
2017-11-09 11:13:32 +11:00
Matt-Yorkley
01647c3df9 Disable allow_backorders by default in test environment 2017-11-02 17:43:46 +11:00
Rob Harrington
cd6d7c76f6 Fix spec that requires preference persistence 2017-11-02 17:43:04 +11:00
Rob Harrington
efa71c4ac8 Use Spree's approach for handling config when testing 2017-11-02 17:43:04 +11:00
Rob Harrington
d4eb27a4ed Fix race condition in shipping method order spec 2017-11-01 16:37:12 +11:00
Duende13
eca18ba6ee Test to control order of shipping methods by name 2017-11-01 15:30:42 +11:00
Duende13
31fa49feed Added orderBy 'name' to the list of shipping methods offered. 2017-11-01 15:30:42 +11:00
yasirazgar
b68aafdb72 1799 - adding missing translations in new shipping methods page 2017-11-01 10:50:21 +11:00
Andy Palmer
fd09a63e48 Imperative specs as per review comments 2017-10-24 17:56:04 +11:00
Andy Palmer
afc50863cd Replace Deface with update to overridden template 2017-10-24 17:39:34 +11:00
Andy Palmer
fea2240c39 Disabled product links in cart for openfoodfoundation/openfoodnetwork#1075 2017-10-24 14:56:35 +11:00
Rob H
9642e8295e Merge transifex translations 2017-10-21 00:23:40 +11:00
Enrico Stano
1424d44eab Merge pull request #1919 from nicolauduran/add-dev-doc
Add more development documentation
2017-10-20 14:31:43 +02:00
Nicolau Duran
0a5f0a518d Add development doc 2017-10-20 13:18:21 +02:00
Transifex-Openfoodnetwork
ff1672e411 Updating translations for config/locales/nb.yml [skip ci] 2017-10-20 19:50:21 +11:00
Transifex-Openfoodnetwork
32d8368990 Updating translations for config/locales/fr.yml [skip ci] 2017-10-20 19:42:24 +11:00
Lynne
e7f8102eb9 Update en-GB.yml 2017-10-20 08:29:18 +01:00
Rob Harrington
24e1d0b775 Fix mistyped translation key for 'dashboard' 2017-10-20 16:26:08 +11:00
Rob Harrington
ceadd386aa Update order spec to test an order with a total > 0
This is necessary because the previous commit changed the logic
around payment state, meaning that a complete order with a total
of 0 and no complete paymnents is considered to have a payment
state of 'paid'. I don't think this is problematic, since it is
not possible to check out an order without line items.

This way the spec tests an order modelled on the real world.
2017-10-20 15:21:59 +11:00
Rob Harrington
d42dc2b286 Fix #1902: ensure correct payment state when failed payments are present
Problem: order payments didn't seem to be loaded in any particular order,
and OrderUpdater#update_payment_state was relying on payment order to de-
termine payment state.

Strategy: Adapt a version of this method from a future version of Spree.
I tried to select a version where I would have to make the absolute mini-
mum number of changes to get it to work. See comments in code for justif-
ications of the changes that I did make.
2017-10-20 15:21:59 +11:00
Continuous Integration
e9c8e17710 Merge remote-tracking branch 'origin/master' into HEAD 2017-10-19 20:42:35 +11:00
Lynne
bfd845915c Update en-GB.yml 2017-10-19 10:41:21 +01:00
Rob Harrington
b7976a2356 Do not update finalized fee adjustments 2017-10-19 16:54:39 +11:00
Rob Harrington
cd744dab68 Ignore .byebug_history after recent update of byebug gem 2017-10-19 10:45:24 +11:00
Transifex-Openfoodnetwork
02e3aac3f0 Updating translations for config/locales/fr.yml [skip ci] 2017-10-19 04:38:24 +11:00
Transifex-Openfoodnetwork
50075f02a0 Updating translations for config/locales/es.yml [skip ci] 2017-10-18 19:29:14 +11:00
Enrico Stano
05d8cd09e3 Merge pull request #1890 from coopdevs/add-node-version
Track node version in .node-version
2017-10-18 09:24:06 +02:00
Justyna Field
02fd87158e Add display flex on active table row to fix misalignment 2017-10-18 15:05:55 +11:00
Pierre de Lacroix
165af4b812 Use I18n "lazy" lookup 2017-10-18 14:38:40 +11:00
Pierre de Lacroix
dba8e36752 Change key for uncapitalized "items" translation 2017-10-18 14:38:40 +11:00
Pierre de Lacroix
a245590114 Fix some translations 2017-10-18 14:38:40 +11:00
Continuous Integration
5ecae39051 Merge remote-tracking branch 'origin/master' into HEAD 2017-10-17 19:36:45 +11:00
Transifex-Openfoodnetwork
2508234a7c Updating translations for config/locales/en_GB.yml [skip ci] 2017-10-17 19:23:35 +11:00
Transifex-Openfoodnetwork
da5f9e7ebc Updating translations for config/locales/nb.yml [skip ci] 2017-10-16 20:00:37 +11:00
Rob Harrington
0d483882de Update helper messages in Stripe Connect config UI 2017-10-16 10:37:04 +11:00
Rob Harrington
9e40502876 Update stripe controller routing comments 2017-10-16 09:39:15 +11:00
Continuous Integration
c38e58159f Merge remote-tracking branch 'origin/master' into HEAD 2017-10-13 18:57:25 +11:00
Transifex-Openfoodnetwork
acf0919bfa Updating translations for config/locales/en_GB.yml [skip ci] 2017-10-13 18:33:41 +11:00
Rob Harrington
bca409bfe4 Bumping very outdated versions of pry and byebug 2017-10-13 15:47:59 +11:00
Pierre de Lacroix
1fe10b4b25 Add pointer cursor to other links in products bulk edit 2017-10-13 15:33:30 +11:00
Pierre de Lacroix
768378b147 Add pointer cursor to EXPAND ALL link in products bulk edit 2017-10-13 15:33:30 +11:00
Rob Harrington
1fcbf6b44d Clear shipping_method_id from order when restarting checkout
If the order is allowed to retain a shipping_method_id, then subsequent
saves of the order will cause a new shipment to be initialised. Seems to
only happen for delivery shipping methods. This is undesirable because
fees for the new shipment will appear in the checkout summary, which is
not smart enough to recognise existing shipment fees and adjust the order
total accordingly.
2017-10-13 12:53:35 +11:00
Rob Harrington
f96502c369 Add unit specs for CheckoutController#restart_checkout 2017-10-13 12:53:35 +11:00
Rob Harrington
c031b0e52b Clear shipments and payments after failed payment at checkout 2017-10-13 12:53:35 +11:00
Rob Harrington
6006952603 Moving checkout request specs into their own folder 2017-10-13 12:53:35 +11:00
Duende13
e5fb8712d7 Simplify Product Edit Screen removing fields and adding 2 new menu options for seo and group buy (#1741) 2017-10-13 11:37:57 +11:00
Pierre de Lacroix
508dfa4f23 Fix failing tests assuming localizeCurrency has no "delimiter" 2017-10-13 10:26:13 +11:00
Pierre de Lacroix
65d176f533 Fix wrong way to force currency symbol after the amount 2017-10-13 10:26:13 +11:00
Pierre de Lacroix
089c754f62 Remove conversion of amounts to currency strings via Money in serializers as it's better done in JS 2017-10-13 10:26:13 +11:00
Pierre de Lacroix
aae8f1cbc4 Change localizeCurrency filter to use I18n.toCurrency 2017-10-13 10:26:12 +11:00
Matt-Yorkley
7194db40ee Merge pull request #1895 from Matt-Yorkley/codeclimate-symbol-arrays
Relax rubocop Style/SymbolArray rule
2017-10-13 00:06:32 +01:00
Rob Harrington
f2ad087be5 Change inheritance of StripeAccountsController 2017-10-13 07:57:16 +11:00
Rob Harrington
0b8b5e694e Move Stripe Connect callback action to dedicated controller 2017-10-12 22:47:51 +11:00
Rob Harrington
01f9fd3232 Rename webhook handler status mappings 2017-10-12 22:47:51 +11:00
Rob Harrington
99cac20725 Fall back to 200 when handler returns an unknown result 2017-10-12 22:47:51 +11:00
Rob Harrington
068dbe5013 Add verification to Stripe webhook endpoint 2017-10-12 22:47:45 +11:00
Rob Harrington
ed375a1e2c Build Event object in controller instead of service object 2017-10-12 20:51:17 +11:00
Rob Harrington
4345285164 Allow more granularity in Stripe WebhookHandler responses 2017-10-12 20:51:17 +11:00
Rob Harrington
eb7cb02f33 Namespace stripe webhook controller in Stripe module 2017-10-12 20:50:29 +11:00
Rob Harrington
f22dd7513d Add a service object for handling Stripe webhooks 2017-10-11 17:50:46 +11:00
Rob Harrington
c54119f482 Rename stripe controller action from 'deauthorize' to 'webhook' 2017-10-11 17:11:02 +11:00
Rob Harrington
23d2b3a664 Move Stripe webhook logic into dedicated frontend controller 2017-10-11 16:38:19 +11:00
Rob Harrington
c747bb5305 Remove improper use of quick_login_as_admin from unit spec 2017-10-11 16:10:08 +11:00
Matt-Yorkley
d147d2035d Disable symbol array cop 2017-10-07 11:50:59 +01:00
Maikel Linke
4dd71c1240 Add CSS workaround to display repeated table head
Fixes https://github.com/openfoodfoundation/openfoodnetwork/issues/1738
2017-10-06 16:51:19 +11:00
Maikel Linke
6ad7c7b835 Tidy up HTML indent 2017-10-06 14:24:28 +11:00
Maikel Linke
10bbc5f9ef Hide the menu on embedded group pages 2017-10-06 14:24:28 +11:00
Maikel Linke
b8a124b99e Add preview page for embedded groups 2017-10-06 14:24:28 +11:00
Maikel Linke
28b1ea2d9f Allow group pages to be in iframes 2017-10-06 14:24:28 +11:00
Maikel Linke
2b989f49ea Enable iframes in development environment 2017-10-06 14:24:28 +11:00
Enrico Stano
bdc701f880 Merge pull request #1816 from coopdevs/disable-create-profile-on-submit
Disable create profile on submit
2017-10-05 15:25:37 +02:00
Enrico Stano
7af154d675 Merge pull request #1820 from coopdevs/missing-translations-register
Missing translations in Enterprise Registration
2017-10-05 13:12:09 +02:00
Pau Perez
2552b5faac Track node version in .node-version
This is used by https://github.com/nodenv/nodenv
2017-09-29 16:11:22 +02:00
Pau Perez
d8e3052575 Ensure a callback function is provided 2017-09-29 16:10:11 +02:00
Transifex-Openfoodnetwork
3c797d3b86 Updating translations for config/locales/es.yml [skip ci] 2017-09-27 00:23:20 +10:00
Transifex-Openfoodnetwork
46ca3bc950 Updating translations for config/locales/fr.yml [skip ci] 2017-09-26 19:51:50 +10:00
Rob Harrington
75ec77dc31 Remove the 'confirm' step from the order checkout flow
This step is not being responded to anyway, since we are not rending a page for each checkout step

It was causing an issue whereby an order in the 'confirm' state was not able to progress through the
checkout controller because it was expecting to only redirect to paypal from the 'payment' state.
figured it was easiest to just remove the step, seeing as it wasn't being used in any meaningful way.
It should be fine to bring the 'confirm' step back in the future if we need it, we will just have to
make sure paypal the paypal issue is resolved.
2017-09-23 15:15:06 +10:00
Rob Harrington
a09a54e4cb Set transaction fee adjustments to ineligible if payment is invalid or failed 2017-09-23 15:15:06 +10:00
Rob Harrington
e486dbd4f8 Respond to Stripe webhook with status of 204 if specified account is not found 2017-09-23 14:58:35 +10:00
Rob Harrington
db5503dd80 Allow destruction of StripeAccounts even if deauthorise request fails
Log deauthorise failures to Bugsnag
2017-09-23 14:58:35 +10:00
Rob Harrington
dd3d205536 Update deauthorize webhook to latest version of API (again) 2017-09-23 14:58:35 +10:00
Rob Harrington
90007d7114 Prevent Stripe-based payment methods that are not linked to a StripeAccount from displaying in the checkout 2017-09-23 14:58:35 +10:00
Rob Harrington
7ba99c0fe0 Update Bogus Gateway error message in checkout spec 2017-09-23 14:58:35 +10:00
Rob Harrington
ba61f94906 Expose Stripe token creation error messages in Checkout 2017-09-23 14:58:35 +10:00
Rob Harrington
7c82fa3d44 Show more helpful payment processing error in checkout 2017-09-23 14:58:35 +10:00
Rob Harrington
665749d0c5 Refactor Stripe::AccountConnector
Connector now handles cancellation of the connection wizard by the user more elegantly
2017-09-23 14:58:35 +10:00
Rob Harrington
d3566f9303 Update deauthorize webhook to latest version of API 2017-09-23 14:58:35 +10:00
Rob Harrington
7d2deca969 Ensure cart_spec runs in context where backorders are disabled 2017-09-23 14:58:35 +10:00
Rob Harrington
0f19be4db4 Configure StripeElements service to map cc_type to that used by activemerchant 2017-09-23 14:58:35 +10:00
Rob Harrington
393a4efbf6 Fix flaky OrderSerializer spec
Make sure that completed payment is for an amount less that the order total
2017-09-23 14:58:35 +10:00
Rob Harrington
34b109cbb7 Add basic validation to credit card form on account page 2017-09-23 14:58:35 +10:00
Rob Harrington
4785f3eacc Use lowercased cc_type in CreditCard service 2017-09-23 14:58:34 +10:00
Rob Harrington
e14b017f1f Fix broken Stripe checkout spec 2017-09-23 14:58:34 +10:00
Rob Harrington
d2096cf6d1 Make request stubs less brittle by using regex 2017-09-23 14:58:34 +10:00
Rob Harrington
fbda1a27ad Add missing translation referenced from spree_auth_devise 2017-09-23 14:58:34 +10:00
Rob Harrington
098afc62c1 Fix rubocop issues 2017-09-23 14:58:34 +10:00
Rob Harrington
1cd1e9dc37 Extract filters for available PMs into service object 2017-09-23 14:58:34 +10:00
Rob Harrington
0bbaafbd41 Use guard clause 2017-09-23 14:58:34 +10:00
Rob Harrington
0e42c1cf30 Refactor ProfileStorer, call options as a separate method 2017-09-23 14:58:34 +10:00
Rob Harrington
620721c8cb Use find_by_id instead of find in EnterpriseController 2017-09-23 14:58:34 +10:00
Rob Harrington
5cba635783 Add documentation to StripeConnectSettings controller 2017-09-23 14:58:34 +10:00
Rob Harrington
08c723b10f Use expect syntax instead of should 2017-09-23 14:58:34 +10:00
Rob Harrington
61feb2b27d Rename Stripe existing_card param key to existing_card_id 2017-09-23 14:58:34 +10:00
Rob Harrington
a2dee8d3d8 Create a Struct for Stripe Connect settings once rather than on each request 2017-09-23 14:58:34 +10:00
Rob Harrington
a74c502fd9 Refactor logic for creating a payment profile from a Stripe token into a service object 2017-09-23 14:58:34 +10:00
Rob Harrington
f6c3a2a46e Remove new credit card initialisation logic from Spree::UsersController#show 2017-09-23 14:58:34 +10:00
Rob Harrington
4464a85a74 Add missing controller specs for CreditCardController #destroy 2017-09-23 14:58:34 +10:00
Rob Harrington
22bbe29f3d Call single-use before_filters from actions instead 2017-09-23 14:58:34 +10:00
Rob Harrington
9832966b77 Fix Admin::PaymentsController spec 2017-09-23 14:58:34 +10:00
Rob Harrington
19213a5ca8 Rearrange new card inputs on account page 2017-09-23 14:58:34 +10:00
Rob Harrington
3a0b47c451 Add border to Stripe Elements input, make text larger 2017-09-23 14:58:34 +10:00
Rob Harrington
0cd43987de Hide Stripe payment methods without a preferred_enterprise_id from the front-end 2017-09-23 14:58:34 +10:00
Rob Harrington
ca1987fc87 Prevent Stripe payment methods without account owners from being saved 2017-09-23 14:58:34 +10:00
Rob Harrington
2f153d799b Hide 'save credit card' checkbox for guests 2017-09-23 14:58:34 +10:00
Rob Harrington
742dd0b5dd Clean up jquery dialog styling 2017-09-23 14:58:34 +10:00
Rob Harrington
ecef905444 Allow Stripe-based payments to be voided (refunded) 2017-09-23 14:58:34 +10:00
Rob Harrington
dd56e03be1 Stop setting host for url helpers in specs 2017-09-23 14:58:34 +10:00
Rob Harrington
7b456461f3 Add ng-model directive to save credit card checkbox
I have no idea how this was working before\?!\?!\?!
2017-09-23 14:58:34 +10:00
Rob Harrington
e4872172c8 Move PaymentMethodSerializer to correct path 2017-09-23 14:58:34 +10:00
Rob Harrington
2ed5e144ca Convert problematic embedded shopfronts feature spec into request spec 2017-09-23 14:58:34 +10:00
Rob Harrington
f9df4d4c93 Rewrite js unit specs for Stripe Elements service 2017-09-23 14:58:34 +10:00
Rob Harrington
1aa477c57c Update feature specs to look for Stripe Elements element 2017-09-23 14:58:34 +10:00
Rob Harrington
69385370ee Initialize Stripe object only if a publishable_key has been defined 2017-09-23 14:58:34 +10:00
Rob Harrington
65ab83a9a5 Move StripeElements element to an AngularJS directive, mount from there 2017-09-23 14:58:34 +10:00
Rob Harrington
746c2ffef9 Add 'publishable_key' property to Stripe module (enables stubbing) 2017-09-23 14:58:34 +10:00
stveep
6690f2e9e7 Restyle add card form 2017-09-23 14:58:34 +10:00
stveep
74a7cb82bc Modify to use Stripe Elements to manually add cards in Account page. Remove StripeJS service 2017-09-23 14:58:34 +10:00
stveep
15ed4c32d9 Checkout switched to Stripe Elements from StripeJS 2017-09-23 14:58:34 +10:00
stveep
56ff877b25 Use Stripe Elements instead of StripeJS: https://stripe.com/docs/elements 2017-09-23 14:58:34 +10:00
Maikel Linke
926f196b96 Re-generate rubocop_todo 2017-09-23 14:58:34 +10:00
Maikel Linke
5b7e2f7ca8 Apply style guide 2017-09-23 14:58:34 +10:00
stveep
0a12f78444 Separate files for Payment Method serializers 2017-09-23 14:58:33 +10:00
stveep
da5c907e0f Add/remove comments from PR feedback 2017-09-23 14:58:33 +10:00
stveep
f065cbe251 Fix specs for saved credit cards: Add payment profile ID to fixture (now denotes that a card has been saved), check for current user to avoid error attempting to inject saved cards as a guest 2017-09-23 14:58:33 +10:00
stveep
511afa0ddc Bump Stripe gem version 2017-09-23 14:58:33 +10:00
Rob Harrington
d5ab9eb675 Hide option to 'Remember this card' when an existing card is selected 2017-09-23 14:58:33 +10:00
Rob Harrington
cb08011450 Fix typo in Stripe confirm modal 2017-09-23 14:58:33 +10:00
Rob Harrington
41b7be900c Restrict the meaning of 'Saved Cards' to mean those with a payment profile 2017-09-23 14:58:33 +10:00
Rob Harrington
6133b302af Use guard clause in PaymentMethodsController#restrict_stripe_account_change 2017-09-23 14:58:33 +10:00
Rob Harrington
4fb1c7fd92 Add 'Stripe is in Beta' warning 2017-09-23 14:58:33 +10:00
Rob Harrington
b31881baa5 Add explanation about configuring Stripe API keys 2017-09-23 14:58:33 +10:00
Rob Harrington
4e96487da9 Redirect to #/payment methods from stripe connect callback 2017-09-23 14:58:33 +10:00
Rob Harrington
98317e96d0 Remove unused stripe action abilities 2017-09-23 14:58:33 +10:00
Rob Harrington
4865533f26 Restrict edit permissions on Stripe payment methods 2017-09-23 14:58:33 +10:00
Rob Harrington
1f8890b430 Use an explicit date format for PaymentsSerializer#updated_at 2017-09-23 14:58:33 +10:00
Rob Harrington
11daf89005 Add admin views for Stripe payment methods
These views were pretty much just copied from https://github.com/spree/spree_gateway
2017-09-23 14:58:33 +10:00
Rob Harrington
fab893e60b Fix paypal source_form view
The previous commit broke the selectors used by app/assets/javascripts/spree/backend/paypal_express.js
in the better_spree_paypal_express gem.

We can remove this override of the paypal source_form view when we update better_spree_paypal_express
to a version that includes the following commit:
4360a1fb82
2017-09-23 14:58:33 +10:00
Rob Harrington
a04116466e Fix js for switching form partial for new admin payments
All of the functional changes made in this commit came from a future version of Spree:
8a3a80b08a
2017-09-23 14:58:33 +10:00
Rob Harrington
2f6493bb86 Use ng-cloak for admin/enterprises/edit form 2017-09-23 14:58:33 +10:00
Rob Harrington
589c2a1500 Add a modal to handle explanation of user's responsibilities before redirecting to Stripe 2017-09-23 14:58:33 +10:00
Rob Harrington
8cae874109 Fix styling on jquery dialogs 2017-09-23 14:58:33 +10:00
Rob Harrington
7c406f7c3a Use hash navigation to direct users to #/payment_methods from Stripe PM 2017-09-23 14:58:33 +10:00
Rob Harrington
862443ed6d Add hash navigation to admin Enterprise edit view 2017-09-23 14:58:33 +10:00
Rob Harrington
3b78179dea Ask customer about saving card details used in checkout 2017-09-23 14:58:33 +10:00
Rob Harrington
f317cee9e9 Tweak UI for selecting an existing card at Checkout 2017-09-23 14:58:33 +10:00
Rob Harrington
35912605c3 Include customer name in source attrs for Stripe checkout requests 2017-09-23 14:58:33 +10:00
Rob Harrington
8901af897a Store card details submitted via checkout 2017-09-23 14:58:33 +10:00
Rob Harrington
ee92f46bd5 Fix stripe request spec by providing en enterprise_id
The enterprise_id is used to lookup a StripeAccount which is provided to the Spree::Token#create call in the StripeConnect gateway
2017-09-23 14:58:33 +10:00
Rob Harrington
44ba499ad9 Stub rather than set Stripe api_key in specs 2017-09-23 14:58:33 +10:00
Rob Harrington
44d172f3b4 Mock stripe_account_id for StripeAccount gateway specs 2017-09-23 14:58:33 +10:00
Rob Harrington
d2b6ba4330 Provide a Stripe client_id for StripeAccountsController spec 2017-09-23 14:58:33 +10:00
Rob Harrington
576e4db9be Authorize StripeAccount#status using the account object
Rather than the enterprise
2017-09-23 14:58:33 +10:00
Rob Harrington
692ccf0598 Cleaning up oauth2 extension that is no longer required
(We're using Stripes built-in OAuth Libraries instead)
2017-09-23 14:58:33 +10:00
Rob Harrington
ce65a9d063 Bump stripe gem version to 3.0.1
Allows us to use the stripe gem's built-in OAuth wrappers, rather than our own
2017-09-23 14:58:33 +10:00
Rob Harrington
ffc99df373 Consolidate Stripe routes/actions into StripeAccountsController 2017-09-23 14:58:33 +10:00
Rob Harrington
5c58d30ca7 Create payment from user-specified payment method when using existing card 2017-09-23 14:58:33 +10:00
Rob Harrington
3efabf5c50 Add translations for Stripe connection flashes 2017-09-23 14:58:33 +10:00
Rob Harrington
919e39f950 Provide a valid enterprise for building redirect path for Stripe Connect callback 2017-09-23 14:58:33 +10:00
Rob Harrington
0e14704572 Kill empty space 2017-09-23 14:58:33 +10:00
Rob Harrington
e9d062a8c2 Use nested module/class definitions instead of compact style 2017-09-23 14:58:33 +10:00
Rob Harrington
f3af36deca Disable rubocop Style/PredicateName check against override of Spree method 2017-09-23 14:58:32 +10:00
Rob Harrington
ecb78233d9 Use guard clauses where possible 2017-09-23 14:58:32 +10:00
Rob Harrington
a68ae1fe2d Provide a sensible flash message when CreditCard#destroy action fails 2017-09-23 14:58:32 +10:00
Rob Harrington
28ba05ec6b Fix Lint/UselessAssignment offences for stripe-connect 2017-09-23 14:58:32 +10:00
Rob Harrington
5b675cbaba Make OAuth private methods actually private 2017-09-23 14:58:32 +10:00
Rob Harrington
42dd58426e Auto-correct rubocop offences for stripe-connect 2017-09-23 14:58:32 +10:00
Rob Harrington
c83755f901 Clean up StripeConnect gateway 2017-09-23 14:58:32 +10:00
Rob Harrington
ae2d3d3fd9 Refactoring StripeHelper into service objects 2017-09-23 14:58:32 +10:00
Rob Harrington
e6eb45b453 Name StripeAccountController spec file correctly 2017-09-23 14:58:32 +10:00
Rob Harrington
01ce092ebc Handle Stripe token creation request failure 2017-09-23 14:58:32 +10:00
Rob Harrington
5d77ef52c5 Replace text strings with variables in stripe request spec 2017-09-23 14:58:32 +10:00
Rob Harrington
e8636c0cbf Set dummy Stripe API key for front-end credits cards feature spec 2017-09-23 14:58:32 +10:00
Rob Harrington
f890927423 Implementing the Stripe Connect feature toggle 2017-09-23 14:58:32 +10:00
Rob Harrington
6499d17cb1 Adding feature toggle config variable for Stripe Connect 2017-09-23 14:58:32 +10:00
Rob Harrington
1d1e581c85 Refactoring CreditCardController, rendering card processing errors as json 2017-09-23 14:58:32 +10:00
Rob Harrington
64009a2c9e CheckoutController can render payment gateway error messages as json 2017-09-23 14:58:32 +10:00
Rob Harrington
14f6ea4c01 Adding required Stripe config variables to application.yml.example 2017-09-23 14:58:32 +10:00
Rob Harrington
fdca1f6606 Adding message about having no saved cards to account/cards UI 2017-09-23 14:58:32 +10:00
Rob Harrington
63a15ec392 CreditCardController#destroy redirects to account#/cards 2017-09-23 14:58:32 +10:00
Rob Harrington
356dad73ba Ensure spec has Stripe.api_key set 2017-09-23 14:58:32 +10:00
Rob Harrington
fb5784fbda Allow updating of account settings from account tabs interface 2017-09-23 14:58:32 +10:00
Rob Harrington
4ef97aa418 Showing past orders under the orders tab 2017-09-23 14:58:32 +10:00
Rob Harrington
b9d72ce4cf Refactoring logic for displaying orders on the front-end account page 2017-09-23 14:58:32 +10:00
Rob Harrington
9733bb3a77 Renaming account#history to account#transactions 2017-09-23 14:58:32 +10:00
Rob Harrington
532dc57725 Adding translations for /account tabs 2017-09-23 14:58:32 +10:00
Rob Harrington
f4c3fbf8bc Refactoring credit cards interface, and backend logic 2017-09-23 14:58:32 +10:00
Rob Harrington
778526af2e Rewriting styling for new tabs components 2017-09-23 14:58:32 +10:00
Rob Harrington
1aebee0583 WIP: rebuilding accounts page using tabs infrastructure 2017-09-23 14:58:32 +10:00
Rob Harrington
ed5c650456 Writing a new tabset component for front-end tabs
Modeled on back-end 'panels' infrastructure
2017-09-23 14:58:32 +10:00
Rob Harrington
b8c6da301c Removing unnecessary dependencies from OrdersCtrl 2017-09-23 14:58:32 +10:00
Rob Harrington
269a60b36f Adding request specs for case when using an existing card stored by Stripe for payment 2017-09-23 14:58:32 +10:00
Rob Harrington
25907f97a8 Cleaning up Stripe Connect request spec 2017-09-23 14:58:32 +10:00
Rob Harrington
d1779b9457 Keep timestamps as :null => false in schema 2017-09-23 14:58:32 +10:00
stveep
ddac179f9b Add translations 2017-09-23 14:58:31 +10:00
stveep
25f48d944c Add delete links, tidy up UI a bit (WIP), page refresh after adding still doesn't work 2017-09-23 14:58:31 +10:00
stveep
c9c4680ef6 Backend code to create Stripe customers and store their IDs in CreditCards. Page refresh not working 2017-09-23 14:58:31 +10:00
stveep
1449169b16 Basic UI for adding credit card details and getting a Stripe token without making a payment 2017-09-23 14:58:31 +10:00
stveep
c6e50a3f7f Stub Stripe requests in feature spec 2017-09-23 14:58:31 +10:00
stveep
56295e5ffb Fix request and feature specs 2017-09-23 14:58:31 +10:00
Rob Harrington
33a3db8698 Making :source attr_accessible for Spree::Payment 2017-09-23 14:58:31 +10:00
stveep
c4f9a5a234 Add code to CheckoutController to construct card attributes when using an existing card (via a818fbbecd/core/app/models/spree/order/checkout.rb:212) 2017-09-23 14:58:31 +10:00
stveep
627899bbd4 spec for source attributes to pass for saved card 2017-09-23 14:58:31 +10:00
stveep
12f4f2d17a Add some logic to check whether a saved card has been selected before making a request from Stripe 2017-09-23 14:58:31 +10:00
stveep
300dc3084c Add default card, disable inputs when a card is selected 2017-09-23 14:58:31 +10:00
stveep
50c3d1367d Tidy up comment 2017-09-23 14:58:31 +10:00
stveep
a1cad82564 Only show credit cards if previously saved, split credit card db migrations and tidy up serializer 2017-09-23 14:58:31 +10:00
stveep
298fd057f5 Check for current user before injecting credit cards 2017-09-23 14:58:31 +10:00
stveep
33b570b117 Inject cards for current user into checkout and add selector dropdown to gateway partial. 2017-09-23 14:58:31 +10:00
stveep
3b05b76b80 Bring in ability to store CreditCards against Users from Spree 2.3 (spree commit d470b31798f3). 2017-09-23 14:58:31 +10:00
Rob Harrington
c97a140471 WIP: Storing Stripe card details for later use
NOTE: No interface for actually selecting a stored card to use yet
2017-09-23 14:58:31 +10:00
Rob Harrington
7c831c9844 Adding StripeJS to checkout page
Allow tokens to be request and passed through as payment source_attributes
2017-09-23 14:57:02 +10:00
Rob Harrington
5c16fefe41 Creating basic angular StripeJS wrapper service for requesting tokens 2017-09-23 14:57:02 +10:00
Rob Harrington
5ad88f992c Adding live stripe account status display to payment method create/edit interface 2017-09-23 14:57:02 +10:00
Rob Harrington
f87f4310f0 Adding #status controller action for stripe accounts to fetch current info direct from Stripe 2017-09-23 14:57:02 +10:00
Rob Harrington
987ad0df6c Very basic Stripe Connect payment method interface 2017-09-23 14:57:02 +10:00
Rob Harrington
d500c20d3f Adding new StripeConnect payment gateway 2017-09-23 14:57:02 +10:00
Rob Harrington
99a7665edc Requesting read_write permission when authorizing Stripe standalone account 2017-09-23 14:57:02 +10:00
Rob Harrington
37f60bf7a1 Setting Stripe.api_key in an initializer rather than helper 2017-09-23 14:57:02 +10:00
Rob Harrington
b5a6bcdf9d Opening up restriction on activemerchant version by updating Spree ref
Allows use of v > 1.57 which includes support for Stripe Connect
2017-09-23 14:57:02 +10:00
stveep
858852123d Add configuration example 2017-09-23 14:57:02 +10:00
stveep
ae72ebef5e Fix disconnect button formatting 2017-09-23 14:57:02 +10:00
stveep
1450bfd726 Don't retrieve event from Stripe for a deauthorisation 2017-09-23 14:57:02 +10:00
stveep
22e4a50807 Change Stripe webhook handling to post request 2017-09-23 14:57:02 +10:00
stveep
a039286240 Webhook processing changes: fix expected request data formatting 2017-09-23 14:57:02 +10:00
stveep
9ac638f8ba Fix some leftover refactoring from an earlier modification to enterprises controller (now not needed as moved to admin/enterprises) 2017-09-23 14:57:02 +10:00
stveep
da335703b4 Fix specs for travis 2017-09-23 14:57:02 +10:00
stveep
d374ab569d Undo dodgy redirect changes and set spec to pending 2017-09-23 14:57:02 +10:00
stveep
47df2dc20b Tweaking redirects and links 2017-09-23 14:57:02 +10:00
stveep
5c43c75b00 Specify SHA-256 algorithm for JWT in spec fixture 2017-09-23 14:57:02 +10:00
stveep
f83c7a88df Specify SHA-256 algorithm for JWT 2017-09-23 14:57:02 +10:00
stveep
5ae473e07f Add specs, fix redirect after requring relogin 2017-09-23 14:57:02 +10:00
stveep
e69b27a3c4 Tidy up (temp) UI a bit 2017-09-23 14:57:02 +10:00
stveep
e52e04ba29 Adding Stripe Connect information so we don't forget it later 2017-09-23 14:57:02 +10:00
stveep
1dcffa790d Add JWT encoding to state param 2017-09-23 14:57:02 +10:00
stveep
f22278db51 Don't disconnect if the same Stripe account is connected to multiple Enterprises 2017-09-23 14:57:02 +10:00
stveep
0280e04008 Move OAuth2 patching to an initializer 2017-09-23 14:57:02 +10:00
Steve Pettitt
41607c5846 De-associate accounts in response to webhook (not tested with a real deauth request yet) 2017-09-23 14:57:02 +10:00
Steve Pettitt
1c69f2c670 Stripe Helper specs 2017-09-23 14:57:02 +10:00
Steve Pettitt
05a69ff0c6 Worklow to disconnect Stripe from OFN admin interface 2017-09-23 14:57:02 +10:00
Steve Pettitt
758f57a889 Remove CSRF check - doesn't work properly as implemented, but connect request should probably be changed to POST 2017-09-23 14:57:02 +10:00
Steve Pettitt
eed11faa62 Monkey patching OAuth2 gem to include Stripe disconnection method 2017-09-23 14:57:02 +10:00
Steve Pettitt
7fd8c5956d Check CSRF, allow a Stripe account to be connected to more than one enterprise (but not vice versa) 2017-09-23 14:57:02 +10:00
Steve Pettitt
8ed983cf03 Correct spelling :) 2017-09-23 14:57:02 +10:00
Steve Pettitt
b6292e2723 Add some logic to check for a connected Stripe Account in form 2017-09-23 14:57:02 +10:00
Steve Pettitt
8bdf57d0d9 Add Stripe Connect button (CSS) in admin/enterprises/:id/edit#payment_methods 2017-09-23 14:57:02 +10:00
Steve Pettitt
03f590ccc4 Callback creates a new StripeAccount with id and publishable key. 2017-09-23 14:57:02 +10:00
Steve Pettitt
06279848c6 Stripe auth and callback working. Still need to process callback. 2017-09-23 14:57:02 +10:00
Steve Pettitt
3623325cab Add missing files 2017-09-23 14:57:01 +10:00
Steve Pettitt
df18329233 Starting Stripe integration 2017-09-23 14:57:01 +10:00
Steve Pettitt
1db0bbef09 Create table for stripe accounts 2017-09-23 14:57:01 +10:00
Saimon Moore
09aed63cd4 Add todos to remove redundant i18n keys 2017-09-08 13:57:50 +02:00
Saimon Moore
757f886af5 Use proper namespaced translations
... in enterprise registration wizard Type step
2017-09-08 13:35:19 +02:00
Saimon Moore
f73f0d4bf9 Use proper namespaced translations
... in enterprise registration wizard Details step
2017-09-08 12:50:54 +02:00
Saimon Moore
d4f7efd08a Use proper namespaced translations
... in enterprise registration wizard Contact step
2017-09-08 12:49:08 +02:00
Saimon Moore
a1aac7643a Translate Entp registration modal tab titles
- Add proper namespaced translations for Details and Contact tabs
2017-09-08 12:47:53 +02:00
Pau Perez
d3d4628e29 Add doc 2017-09-08 09:51:06 +02:00
Pau Perez
942ab55ddc Disable create profile from signup when submitting
This prevents people re-submitting the form multiple times. Although the
backend validates it, we show an ugly alert message that is hard for
users to understand.
2017-09-07 16:02:06 +02:00
Pau Perez
1b151ee015 Add missing translations in registration wizard 2017-09-01 14:57:16 +02:00
2143 changed files with 120860 additions and 38571 deletions

View File

@@ -1,14 +1,45 @@
engines:
version: "2"
plugins:
rubocop:
enabled: true
channel: rubocop-0-48
channel: "rubocop-0-57"
config:
file: ".rubocop_styleguide.yml"
scss-lint:
enabled: true
checks:
ImportantRule:
enabled: false
VendorPrefix:
enabled: false
duplication:
enabled: true
exclude_patterns:
- "db/**"
- "config/initializers/active_record_postgresql_referential_integrity_patch.rb"
checks:
argument-count:
enabled: false
ratings:
paths:
- app/**
- lib/**
- "**.rb"
exclude_paths:
- spec/**/*
- vendor/**/*
complex-logic:
enabled: false
file-lines:
enabled: false
method-complexity:
enabled: false
method-count:
enabled: false
method-lines:
enabled: false
nested-control-flow:
enabled: false
return-statements:
enabled: false
similar-code:
enabled: false
identical-code:
enabled: false
exclude_patterns:
- "spec/**/*"
- "vendor/**/*"
- "app/assets/javascripts/shared/*"
- "app/assets/javascripts/jquery-migrate-1.0.0.js"

4
.dockerignore Normal file
View File

@@ -0,0 +1,4 @@
.git
.gitignore
log/*
tmp/*

61
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@@ -0,0 +1,61 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
## Description
<!-- Provide a more detailed introduction to the issue itself, and why you consider it to be a bug -->
<!-- How has this bug affected you? What were you trying to accomplish? -->
## Expected Behavior
<!-- Tell us what should happen -->
## Actual Behaviour
<!-- Tell us what happens instead -->
## Steps to Reproduce
<!-- Provide an unambiguous set of steps to reproduce this bug -->
<!-- Include code to reproduce if relevant -->
<!-- Include links -->
<!-- Include user ID -->
1.
2.
3.
4.
## Animated Gif/Screenshot
<!-- Provide a screenshot or brief video reproducing the bug. -->
<!-- Please try to have the dev tools opened on the network tab (press F12 to open the devtools of your browser -->
## Workaround
<!-- Include a workaround for this bug (if relevant) -->
## Severity
<!-- Assign a label and explain the impact.
bug-s1: a critical feature is broken: checkout, payments, signup, login
bug-s2: a non-critical feature is broken, no workaround
bug-s3: a feature is broken but there is a workaround
bug-s4: it's annoying, but you can use it
bug-s5: we can live with it, only a few users impacted
https://github.com/openfoodfoundation/openfoodnetwork/wiki/Bug-severity
-->
## Your Environment
<!-- Include relevant details about the environment you experienced the bug in -->
* Version used:
* Browser name and version:
* Operating System and version (desktop or mobile):
## Possible Fix
<!-- Not obligatory, but suggest a fix or reason for the bug -->

View File

@@ -0,0 +1,35 @@
---
name: Feature template
about: Create feature epics that detail the larger feature or functionality to be
delivered.
title: ''
labels: ''
assignees: ''
---
## What is the problem we are solving
<!-- Describe the problem this feature is supposed to solve. Should be described in the icebox item (in Discourse). -->
## Success factors = expected outcome
<!-- Describe what is the expected outcome: when the feature is released, what would it look like? What will make you say "the problem is solved"? Can be metrics like "Platform has less than 1% service interruption", or yes/no statements like "People can checkout on mobiles. -->
## Useful information for inception
<!-- List here any information that can be useful for the inception stage. -->
## Link to the "Product Development - Backlog" item in Discourse
<!-- Put the link here, and put this epic link in the Discourse item as well for cross-referencing. -->
Add a custom footer
Pages 70
Home
Development environment setup
macOS (Sierra, HighSierra and Mojave)
OS X (El Capitan)
OS X (Mavericks)
Ubuntu
On Heroku
Rubocop
General guidelines
Spree Commerce customisation

View File

@@ -0,0 +1,25 @@
---
name: Story template
about: Create stories that are small chunks of work that devs will pick up and deliver
title: ''
labels: ''
assignees: ''
---
## Description
<!-- Describe the story in detail:
**- As a:** (enterprise user, super admin, user...)
**- On page:** (provide url of the page you want to modify. If not provide where will be created the new url and the name we want to give it)
**- I want to be able to do:** (specify the desired behavior)
(Link to others issues or resources to provide context > only if really necessary). -->
## Acceptance Criteria & Tests
<!-- Document the outcomes that need to be achieved before this component can be considered complete.
-->
<!-- Provide an unambiguous set of steps a tester should do to validate the PR that will solve this issue -->
1.
2.
3.
4.

View File

@@ -0,0 +1,21 @@
---
name: Tech debt template
about: File a refactoring task that aids future development
title: ''
labels: tech debt
assignees: ''
---
### What we should change and why (this is tech debt)
<!-- The use of X changed and part y is now redundant. We can remove it and... -->
### Context
<!-- This came up in PR #3451#issuecomment-461616636. -->
### Impact and timeline
<!-- Example: This simplifies the upgrade to Spree 3 and should be done after upgrading to Spree 2. -->

View File

@@ -1,28 +1,47 @@
#### What? Why?
[Explain why is this change needed and the solution you propose. Provide
context for others to understand it]
Closes #[the issue number this PR is related to]
<!-- Explain why this change is needed and the solution you propose.
Provide context for others to understand it. -->
#### What should we test?
<!-- List which features should be tested and how. -->
[List which features should be tested and how]
#### Release notes
<!-- Write a line or two to be included in the release notes.
Everything is worth mentioning, because you did it for a reason. -->
[In case this should be present in the release notes, please write them or
remove this section otherwise]
<!-- Please assign one category to your PR and delete the others.
The categories are based on https://keepachangelog.com/en/1.0.0/. -->
Changelog Category: Added | Changed | Deprecated | Removed | Fixed | Security
#### How is this related to the Spree upgrade?
<!-- Any known conflicts with the Spree Upgrade?
Explain them or remove this section. -->
[Any known conflicts with the Spree Upgrade? explain them or remove this section
otherwise]
#### Discourse thread
<!-- Is there a discussion about this in Discourse?
Add the link or remove this section. -->
[Is there a discussion about this in Discourse? add the link if so or remove
this section otherwise]
#### Dependencies
<!-- Does this PR depend on another one?
Add the link or remove this section. -->
#### Documentation updates
<!-- Are their any wiki pages that need updating after merging this PR?
List them here or remove this section. -->
[Does this PR depend on another one? add the link of so or remove this section
otherwise]

10
.gitignore vendored
View File

@@ -1,5 +1,6 @@
.bundle
.rbenv-version
.byebug_history
.swp
*.swo
*.swp
@@ -31,12 +32,15 @@ public/stylesheets
public/images
public/spree
config/abr.yml
config/heroku_env.rb
config/newrelic.yml
config/initializers/feature_toggle.rb
config/initializers/db2fog.rb
NERD_tree*
coverage
libpeerconnection.log
/config/application.yml
/config/newrelic.yml
node_modules
vendor/bundle/
coverage
/reports/
!/reports/README.md
bin/

1
.node-version Normal file
View File

@@ -0,0 +1 @@
5.12.0

View File

@@ -1,4 +0,0 @@
--format Fuubar
--format ParallelTests::RSpec::SummaryLogger --out tmp/spec_summary.log
--format ParallelTests::RSpec::RuntimeLogger --out tmp/parallel_runtime_rspec.log
--tag ~performance

View File

@@ -1,179 +1,20 @@
# This is our main Rubocop configuration for developers. It is used when you run:
#
# bundle exec rubocop
#
# The configuration is split into three files. Look into those files for more details.
#
inherit_from:
# The automatically generated todo list to ignore all current violations.
- .rubocop_todo.yml
AllCops:
TargetRubyVersion: 2.1
TargetRailsVersion: 3.2
Include:
- '**/Rakefile'
- '**/config.ru'
Exclude:
- 'db/**/*'
- 'config/**/*'
- 'script/**/*'
- 'vendor/**/*'
- 'node_modules/**/*'
- !ruby/regexp /old_and_unused\.rb$/
# Our Open Food Network style guide. It's used by Code Climate. If you want to see all violations,
# then use only that configuration (like Code Climate):
#
# bundle exec rubocop -c .rubocop_styleguide.yml
#
- .rubocop_styleguide.yml
# OFN SETTINGS
# Cop settings that have been agreed upon by the OFN community
Rails:
Enabled: true
Style/Documentation:
Enabled: false
Style/StringLiterals:
Enabled: false
Layout/MultilineMethodCallIndentation:
Enabled: true
EnforcedStyle: indented
# TEMPORARY/CONTESTED SETTINGS
# These are still to be decided upon, but recommended for inclusion by
# oeoeaio after scrutinising offenses the codebase
# Don't think this is a big issue, mostly picking up RPSEC scope definitions
# with lamdas and RSpec '.to change{}' blocks
Lint/AmbiguousBlockAssociation:
Enabled: false
# Heaps of offences (> 100) in specs, mostly in situations where two or more
# instances of a model are required, but only one is referenced. Difficult to
# fix without making the spec look messy or rewriting it.
# Should definitely fix at some point.
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
# 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
# They should be removed or tweaked and moved above as decisions are made
# NOTE: Cops which did not fail at the time of writing were removed
Layout/DotPosition:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styledotposition
Layout/SpaceBeforeBlockBraces:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylespacebeforeblockbraces
Layout/SpaceInsideParens:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylespaceinsideparens
Style/Alias:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylealias
Style/BlockDelimiters:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styleblockdelimiters
Style/CommentAnnotation:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylecommentannotation
Style/DoubleNegation:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styledoublenegation
Style/FormatString:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styleformatstring
Style/IfUnlessModifier:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styleifunlessmodifier
Style/Lambda:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylelambda
Style/MultilineBlockChain:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylemultilineblockchain
Style/NegatedIf:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylenegatedif
Style/NegatedWhile:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylenegatedwhile
Style/ParallelAssignment:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styleparallelassignment
Style/PercentLiteralDelimiters:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylepercentliteraldelimiters
Style/Semicolon:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylesemicolon
Style/SingleLineMethods:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylesinglelinemethods
Style/TrailingCommaInArguments:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styletrailingcommainarguments
Style/TrailingCommaInLiteral:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styletrailingcommainliteral
Style/WordArray:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylewordarray
Lint/AmbiguousRegexpLiteral:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#lintambiguousregexpliteral
Lint/AssignmentInCondition:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#lintassignmentincondition
Metrics/AbcSize:
Enabled: false
Metrics/BlockNesting:
Enabled: false
Metrics/ClassLength:
Enabled: false
Metrics/ModuleLength:
Enabled: false
Metrics/CyclomaticComplexity:
Enabled: false
Metrics/LineLength:
Enabled: false
Metrics/MethodLength:
Enabled: false
Metrics/ParameterLists:
Enabled: false
Metrics/PerceivedComplexity:
Enabled: false
# A manually compiled todo list to ignore metrics violations on a file-by-file basis.
- .rubocop_manual_todo.yml

703
.rubocop_manual_todo.yml Normal file
View File

@@ -0,0 +1,703 @@
# A manually compiled todo list to ignore metrics violations on a file-by-file basis.
#
# The file .rubocop_todo.yml is generated automatically and contains a
# configuration to make all files pass. For a lot of cops it just lists
# the offending files. But for metrics cops it sets a different metric.
#
# Since we don't want these lax metrics, we override them in our config
# file .rubocop.yml which results in a lot of offences again. This file
# lists all offending files for each cop to make rubocop pass. We can
# improve the code over time and remove items from the list.
#
# This file was manually created by using the following tools:
#
# rubocop > rubo.log
# # inspect log file to see which cops are failing
# # copy cop configurations and add Exclude parameter
# grep ExampleCop rubo.log | cut -d ":" -f 1 | sort -u >> .rubocop.yml
# # use vim to add `- ` before each line
#
# This process probably doesn't need repeating. Otherwise there is plenty
# of room for improvements and automation.
Metrics/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/enterprises_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/inventory_items_controller.rb
- app/controllers/admin/manager_invitations_controller.rb
- app/controllers/admin/order_cycles_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/order_cycles_controller.rb
- app/controllers/api/product_images_controller.rb
- app/controllers/application_controller.rb
- app/controllers/checkout_controller.rb
- app/controllers/spree/admin/adjustments_controller_decorator.rb
- app/controllers/spree/admin/base_controller_decorator.rb
- app/controllers/spree/admin/orders_controller_decorator.rb
- app/controllers/spree/admin/payments_controller_decorator.rb
- app/controllers/spree/admin/payment_methods_controller_decorator.rb
- app/controllers/spree/admin/reports_controller_decorator.rb
- app/controllers/spree/api/products_controller_decorator.rb
- app/controllers/spree/credit_cards_controller.rb
- app/controllers/spree/orders_controller_decorator.rb
- app/controllers/spree/paypal_controller_decorator.rb
- app/controllers/stripe/callbacks_controller.rb
- app/helpers/admin/injection_helper.rb
- app/helpers/angular_form_builder.rb
- app/helpers/angular_form_helper.rb
- app/helpers/checkout_helper.rb
- app/helpers/enterprises_helper.rb
- app/helpers/footer_links_helper.rb
- 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/admin/navigation_helper_decorator.rb
- app/helpers/spree/orders_helper.rb
- app/jobs/subscription_confirm_job.rb
- app/mailers/subscription_mailer.rb
- app/models/column_preference.rb
- app/models/concerns/order_shipment.rb
- app/models/concerns/product_stock.rb
- app/models/concerns/variant_stock.rb
- app/models/content_configuration.rb
- app/models/customer.rb
- app/models/enterprise_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
- app/models/schedule.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/adjustment_decorator.rb
- app/models/spree/app_configuration_decorator.rb
- app/models/spree/calculator/default_tax_decorator.rb
- app/models/spree/classification_decorator.rb
- app/models/spree/concerns/payment_method_distributors.rb
- app/models/spree/gateway/stripe_connect.rb
- app/models/spree/line_item_decorator.rb
- app/models/spree/order_decorator.rb
- app/models/spree/payment_decorator.rb
- app/models/spree/payment_method_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/spree/shipment_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/user_decorator.rb
- app/models/spree/variant_decorator.rb
- app/models/subscription.rb
- app/models/variant_override.rb
- app/models/variant_override_set.rb
- app/overrides/add_enterprise_fees_to_admin_configurations_menu.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
- app/views/json/_groups.rabl
- app/views/json/_producer.rabl
- app/views/json/partials/_enterprise.rabl
- app/views/spree/api/products/bulk_show.v1.rabl
- app/views/spree/api/variants/bulk_show.v1.rabl
- engines/web/app/helpers/web/cookies_policy_helper.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/available_payment_method_filter.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/customers_report.rb
- lib/open_food_network/enterprise_fee_applicator.rb
- lib/open_food_network/enterprise_fee_calculator.rb
- lib/open_food_network/enterprise_issue_validator.rb
- lib/open_food_network/group_buy_report.rb
- lib/open_food_network/lettuce_share_report.rb
- lib/open_food_network/order_and_distributor_report.rb
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_management_report.rb
- lib/open_food_network/order_grouper.rb
- lib/open_food_network/payments_report.rb
- lib/open_food_network/permalink_generator.rb
- lib/open_food_network/products_cache.rb
- lib/open_food_network/products_renderer.rb
- lib/open_food_network/reports/bulk_coop_allocation_report.rb
- lib/open_food_network/reports/line_items.rb
- lib/open_food_network/sales_tax_report.rb
- lib/open_food_network/users_and_enterprises_report.rb
- lib/open_food_network/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/cache.rake
- lib/tasks/data.rake
- lib/tasks/enterprises.rake
- spec/controllers/admin/bulk_line_items_controller_spec.rb
- spec/controllers/admin/column_preferences_controller_spec.rb
- spec/controllers/admin/customers_controller_spec.rb
- spec/controllers/admin/enterprises_controller_spec.rb
- spec/controllers/admin/inventory_items_controller_spec.rb
- spec/controllers/admin/manager_invitations_controller_spec.rb
- spec/controllers/admin/order_cycles_controller_spec.rb
- spec/controllers/admin/proxy_orders_controller_spec.rb
- spec/controllers/admin/schedules_controller_spec.rb
- spec/controllers/admin/stripe_accounts_controller_spec.rb
- spec/controllers/admin/stripe_connect_settings_controller_spec.rb
- spec/controllers/admin/subscription_line_items_controller_spec.rb
- spec/controllers/admin/subscriptions_controller_spec.rb
- spec/controllers/admin/variant_overrides_controller_spec.rb
- spec/controllers/api/logos_controller_spec.rb
- spec/controllers/api/order_cycles_controller_spec.rb
- spec/controllers/api/orders_controller_spec.rb
- spec/controllers/api/product_images_controller_spec.rb
- spec/controllers/api/promo_images_controller_spec.rb
- spec/controllers/cart_controller_spec.rb
- spec/controllers/checkout_controller_spec.rb
- spec/controllers/enterprises_controller_spec.rb
- spec/controllers/line_items_controller_spec.rb
- spec/controllers/shop_controller_spec.rb
- spec/controllers/shops_controller_spec.rb
- spec/controllers/spree/admin/adjustments_controller_spec.rb
- spec/controllers/spree/admin/base_controller_spec.rb
- spec/controllers/spree/admin/orders/customer_details_controller_spec.rb
- spec/controllers/spree/admin/orders_controller_spec.rb
- spec/controllers/spree/admin/payment_methods_controller_spec.rb
- spec/controllers/spree/admin/payments_controller_spec.rb
- spec/controllers/spree/admin/reports_controller_spec.rb
- spec/controllers/spree/admin/variants_controller_spec.rb
- spec/controllers/spree/api/line_items_controller_spec.rb
- spec/controllers/spree/api/products_controller_spec.rb
- spec/controllers/spree/api/shipments_controller_spec.rb
- spec/controllers/spree/api/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/stripe/callbacks_controller_spec.rb
- spec/controllers/stripe/webhooks_controller_spec.rb
- spec/controllers/user_confirmations_controller_spec.rb
- spec/controllers/user_registrations_controller_spec.rb
- spec/features/admin/adjustments_spec.rb
- spec/features/admin/bulk_order_management_spec.rb
- spec/features/admin/bulk_product_update_spec.rb
- spec/features/admin/customers_spec.rb
- spec/features/admin/enterprise_fees_spec.rb
- spec/features/admin/enterprise_relationships_spec.rb
- spec/features/admin/enterprise_roles_spec.rb
- spec/features/admin/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/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/product_import_spec.rb
- spec/features/admin/products_spec.rb
- spec/features/admin/reports_spec.rb
- spec/features/admin/schedules_spec.rb
- spec/features/admin/shipping_methods_spec.rb
- spec/features/admin/subscriptions_spec.rb
- spec/features/admin/tag_rules_spec.rb
- spec/features/admin/variant_overrides_spec.rb
- spec/features/consumer/account/cards_spec.rb
- spec/features/consumer/account/settings_spec.rb
- spec/features/consumer/account_spec.rb
- spec/features/consumer/authentication_spec.rb
- spec/features/consumer/cookies_spec.rb
- spec/features/consumer/groups_spec.rb
- spec/features/consumer/multilingual_spec.rb
- spec/features/consumer/registration_spec.rb
- spec/features/consumer/shopping/cart_spec.rb
- spec/features/consumer/shopping/checkout_auth_spec.rb
- spec/features/consumer/shopping/checkout_spec.rb
- spec/features/consumer/shopping/embedded_groups_spec.rb
- spec/features/consumer/shopping/embedded_shopfronts_spec.rb
- spec/features/consumer/shopping/orders_spec.rb
- spec/features/consumer/shopping/products_spec.rb
- spec/features/consumer/shopping/shopping_spec.rb
- spec/features/consumer/shopping/variant_overrides_spec.rb
- spec/features/consumer/shops_spec.rb
- spec/helpers/admin/subscriptions_helper_spec.rb
- spec/helpers/checkout_helper_spec.rb
- spec/helpers/enterprises_helper_spec.rb
- spec/helpers/groups_helper_spec.rb
- spec/helpers/injection_helper_spec.rb
- spec/helpers/order_cycles_helper_spec.rb
- spec/helpers/spree/admin/base_helper_spec.rb
- spec/jobs/confirm_order_job_spec.rb
- spec/jobs/products_cache_integrity_checker_job_spec.rb
- spec/jobs/refresh_products_cache_job_spec.rb
- spec/jobs/subscription_confirm_job_spec.rb
- spec/jobs/subscription_placement_job_spec.rb
- spec/lib/open_food_network/address_finder_spec.rb
- spec/lib/open_food_network/bulk_coop_report_spec.rb
- spec/lib/open_food_network/cached_products_renderer_spec.rb
- spec/lib/open_food_network/customers_report_spec.rb
- spec/lib/open_food_network/enterprise_fee_applicator_spec.rb
- spec/lib/open_food_network/enterprise_fee_calculator_spec.rb
- spec/lib/open_food_network/enterprise_injection_data_spec.rb
- spec/lib/open_food_network/group_buy_report_spec.rb
- spec/lib/open_food_network/lettuce_share_report_spec.rb
- spec/lib/open_food_network/option_value_namer_spec.rb
- spec/lib/open_food_network/order_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
- spec/lib/open_food_network/orders_and_fulfillments_report_spec.rb
- spec/lib/open_food_network/packing_report_spec.rb
- spec/lib/open_food_network/permissions_spec.rb
- spec/lib/open_food_network/products_and_inventory_report_spec.rb
- spec/lib/open_food_network/products_cache_spec.rb
- spec/lib/open_food_network/products_renderer_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/users_and_enterprises_report_spec.rb
- spec/lib/open_food_network/xero_invoices_report_spec.rb
- spec/lib/stripe/account_connector_spec.rb
- spec/lib/stripe/webhook_handler_spec.rb
- spec/mailers/order_mailer_spec.rb
- spec/mailers/producer_mailer_spec.rb
- spec/mailers/subscription_mailer_spec.rb
- spec/models/column_preference_spec.rb
- spec/models/concerns/order_shipment_spec.rb
- spec/models/concerns/product_stock_spec.rb
- spec/models/customer_spec.rb
- spec/models/enterprise_caching_spec.rb
- spec/models/enterprise_fee_spec.rb
- spec/models/enterprise_group_spec.rb
- spec/models/enterprise_relationship_spec.rb
- spec/models/enterprise_spec.rb
- spec/models/exchange_spec.rb
- spec/models/model_set_spec.rb
- spec/models/order_cycle_spec.rb
- spec/models/producer_property_spec.rb
- spec/models/product_importer_spec.rb
- spec/models/proxy_order_spec.rb
- spec/models/spree/ability_spec.rb
- spec/models/spree/adjustment_spec.rb
- spec/models/spree/calculator/flexi_rate_spec.rb
- spec/models/spree/calculator/price_sack_spec.rb
- spec/models/spree/classification_spec.rb
- spec/models/spree/gateway/stripe_connect_spec.rb
- spec/models/spree/image_spec.rb
- spec/models/spree/line_item_spec.rb
- spec/models/spree/order_spec.rb
- spec/models/spree/payment_method_spec.rb
- spec/models/spree/payment_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/user_spec.rb
- spec/models/spree/variant_spec.rb
- spec/models/stripe_account_spec.rb
- spec/models/tag_rule/discount_order_spec.rb
- spec/models/tag_rule/filter_order_cycles_spec.rb
- spec/models/tag_rule/filter_payment_methods_spec.rb
- spec/models/tag_rule/filter_products_spec.rb
- spec/models/tag_rule/filter_shipping_methods_spec.rb
- spec/models/variant_override_spec.rb
- spec/performance/orders_controller_spec.rb
- spec/performance/shop_controller_spec.rb
- spec/requests/checkout/failed_checkout_spec.rb
- spec/requests/embedded_shopfronts_headers_spec.rb
- spec/requests/shop_spec.rb
- spec/serializers/admin/customer_serializer_spec.rb
- spec/serializers/admin/exchange_serializer_spec.rb
- spec/serializers/admin/for_order_cycle/enterprise_serializer_spec.rb
- spec/serializers/admin/for_order_cycle/supplied_product_serializer_spec.rb
- spec/serializers/admin/subscription_customer_serializer_spec.rb
- spec/serializers/admin/variant_override_serializer_spec.rb
- spec/serializers/api/enterprise_shopfront_serializer_spec.rb
- spec/serializers/current_order_serializer_spec.rb
- spec/serializers/order_serializer_spec.rb
- spec/services/cart_service_spec.rb
- spec/services/embedded_page_service_spec.rb
- spec/services/order_cycle_distributed_variants_spec.rb
- spec/services/order_cycle_form_spec.rb
- spec/services/order_factory_spec.rb
- spec/services/order_syncer_spec.rb
- spec/services/subscription_estimator_spec.rb
- spec/services/subscription_form_spec.rb
- spec/services/subscription_validator_spec.rb
- spec/services/subscription_variants_service_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
Metrics/AbcSize:
Max: 15
Exclude:
- app/controllers/admin/bulk_line_items_controller.rb
- app/controllers/admin/customers_controller.rb
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/enterprise_fees_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
- app/controllers/api/enterprises_controller.rb
- app/controllers/api/order_cycles_controller.rb
- app/controllers/api/product_images_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/spree/admin/adjustments_controller_decorator.rb
- app/controllers/spree/admin/orders/customer_details_controller_decorator.rb
- app/controllers/spree/admin/orders_controller_decorator.rb
- app/controllers/spree/admin/overview_controller_decorator.rb
- app/controllers/spree/admin/payments_controller_decorator.rb
- app/controllers/spree/admin/payment_methods_controller_decorator.rb
- app/controllers/spree/admin/products_controller_decorator.rb
- app/controllers/spree/admin/reports_controller_decorator.rb
- app/controllers/spree/admin/search_controller_decorator.rb
- app/controllers/spree/admin/variants_controller_decorator.rb
- app/controllers/spree/api/products_controller_decorator.rb
- app/controllers/spree/api/shipments_controller_decorator.rb
- app/controllers/spree/credit_cards_controller.rb
- app/controllers/spree/orders_controller_decorator.rb
- app/controllers/spree/user_sessions_controller_decorator.rb
- app/controllers/stripe/callbacks_controller.rb
- app/controllers/user_confirmations_controller.rb
- app/controllers/user_passwords_controller.rb
- app/controllers/user_registrations_controller.rb
- app/helpers/checkout_helper.rb
- app/helpers/i18n_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/orders_helper.rb
- app/jobs/subscription_placement_job.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_relationship.rb
- app/models/model_set.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/proxy_order.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/calculator/default_tax_decorator.rb
- app/models/spree/calculator/flexi_rate_decorator.rb
- app/models/spree/line_item_decorator.rb
- app/models/spree/order_decorator.rb
- app/models/spree/payment_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/spree/taxon_decorator.rb
- app/serializers/api/admin/enterprise_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_syncer.rb
- app/services/subscription_validator.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/customers_report.rb
- lib/open_food_network/enterprise_issue_validator.rb
- lib/open_food_network/group_buy_report.rb
- lib/open_food_network/lettuce_share_report.rb
- lib/open_food_network/option_value_namer.rb
- lib/open_food_network/order_and_distributor_report.rb
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_management_report.rb
- lib/open_food_network/order_cycle_permissions.rb
- lib/open_food_network/packing_report.rb
- 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/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/core/controller_helpers/respond_with_decorator.rb
- lib/spree/localized_number.rb
- lib/stripe/account_connector.rb
- lib/tasks/enterprises.rake
- lib/tasks/sample_data/product_factory.rb
- spec/controllers/spree/api/shipments_controller_spec.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_spec.rb
- spec/features/consumer/shopping/variant_overrides_spec.rb
- spec/models/enterprise_spec.rb
- spec/models/product_importer_spec.rb
- spec/support/performance_helper.rb
Metrics/BlockLength:
Max: 25
ExcludedMethods: [
"class_eval",
"collection",
"context",
"describe",
"feature",
"it",
"member",
"namespace",
"resource",
"resources",
"scenario"
]
Exclude:
- lib/tasks/data.rake
- lib/tasks/dev.rake
- spec/controllers/spree/admin/invoices_controller_spec.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
- spec/spec_helper.rb
- spec/support/delayed_job_helper.rb
- spec/support/matchers/select2_matchers.rb
- spec/support/matchers/table_matchers.rb
Metrics/CyclomaticComplexity:
Max: 6
Exclude:
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/enterprise_fees_controller.rb
- app/controllers/checkout_controller.rb
- app/controllers/spree/admin/payments_controller_decorator.rb
- app/controllers/spree/orders_controller_decorator.rb
- app/helpers/checkout_helper.rb
- app/helpers/i18n_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/navigation_helper_decorator.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/product_decorator.rb
- app/models/variant_override_set.rb
- app/services/cart_service.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/localized_number.rb
- spec/models/product_importer_spec.rb
Metrics/PerceivedComplexity:
Max: 7
Exclude:
- app/controllers/admin/enterprises_controller.rb
- app/controllers/checkout_controller.rb
- app/controllers/spree/admin/payments_controller_decorator.rb
- app/controllers/spree/orders_controller_decorator.rb
- app/helpers/checkout_helper.rb
- app/helpers/i18n_helper.rb
- app/helpers/order_cycles_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
- 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/localized_number.rb
- spec/models/product_importer_spec.rb
Metrics/MethodLength:
Max: 10
Exclude:
- app/controllers/admin/customers_controller.rb
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/enterprise_fees_controller.rb
- app/controllers/admin/manager_invitations_controller.rb
- app/controllers/admin/order_cycles_controller.rb
- app/controllers/admin/stripe_accounts_controller.rb
- app/controllers/admin/subscriptions_controller.rb
- app/controllers/base_controller.rb
- app/controllers/cart_controller.rb
- app/controllers/checkout_controller.rb
- app/controllers/shop_controller.rb
- app/controllers/spree/admin/orders/customer_details_controller_decorator.rb
- app/controllers/spree/admin/payments_controller_decorator.rb
- app/controllers/spree/admin/payment_methods_controller_decorator.rb
- app/controllers/spree/admin/products_controller_decorator.rb
- app/controllers/spree/admin/reports_controller_decorator.rb
- app/controllers/spree/admin/search_controller_decorator.rb
- app/controllers/spree/credit_cards_controller.rb
- app/controllers/spree/orders_controller_decorator.rb
- app/controllers/spree/user_sessions_controller_decorator.rb
- app/controllers/stripe/callbacks_controller.rb
- app/controllers/user_confirmations_controller.rb
- app/controllers/user_passwords_controller.rb
- app/controllers/user_registrations_controller.rb
- app/helpers/checkout_helper.rb
- app/helpers/order_cycles_helper.rb
- app/jobs/subscription_placement_job.rb
- app/mailers/producer_mailer.rb
- app/models/column_preference.rb
- app/models/enterprise.rb
- app/models/enterprise_relationship.rb
- app/models/preference_sections/footer_and_external_links_section.rb
- app/models/preference_sections/main_links_section.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/product_import/product_importer.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/calculator/default_tax_decorator.rb
- app/models/spree/calculator/flexi_rate_decorator.rb
- app/models/spree/order_decorator.rb
- app/models/spree/payment_decorator.rb
- app/models/spree/payment_method_decorator.rb
- app/models/spree/product_decorator.rb
- app/serializers/api/admin/order_cycle_serializer.rb
- app/serializers/api/cached_enterprise_serializer.rb
- app/services/order_cycle_form.rb
- engines/order_management/app/services/order_management/reports/enterprise_fee_summary/scope.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/column_preference_defaults.rb
- lib/open_food_network/customers_report.rb
- lib/open_food_network/enterprise_fee_calculator.rb
- lib/open_food_network/enterprise_issue_validator.rb
- lib/open_food_network/group_buy_report.rb
- lib/open_food_network/lettuce_share_report.rb
- lib/open_food_network/option_value_namer.rb
- lib/open_food_network/order_and_distributor_report.rb
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_management_report.rb
- lib/open_food_network/order_cycle_permissions.rb
- lib/open_food_network/order_grouper.rb
- lib/open_food_network/packing_report.rb
- 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/products_renderer.rb
- lib/open_food_network/rack_request_blocker.rb
- lib/open_food_network/reports/bulk_coop_allocation_report.rb
- lib/open_food_network/reports/bulk_coop_supplier_report.rb
- lib/open_food_network/reports/line_items.rb
- lib/open_food_network/sales_tax_report.rb
- lib/open_food_network/users_and_enterprises_report.rb
- lib/open_food_network/xero_invoices_report.rb
- lib/spree/core/controller_helpers/respond_with_decorator.rb
- lib/spree/localized_number.rb
- lib/stripe/profile_storer.rb
- lib/tasks/sample_data/product_factory.rb
- spec/features/consumer/shopping/checkout_spec.rb
- spec/features/consumer/shopping/variant_overrides_spec.rb
- spec/models/product_importer_spec.rb
- spec/support/request/authentication_workflow.rb
Metrics/ClassLength:
Max: 100
Exclude:
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/order_cycles_controller.rb
- app/controllers/admin/subscriptions_controller.rb
- app/controllers/checkout_controller.rb
- app/models/enterprise.rb
- app/models/order_cycle.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/product_import/product_importer.rb
- app/models/spree/ability_decorator.rb
- app/serializers/api/cached_enterprise_serializer.rb
- app/serializers/api/enterprise_shopfront_serializer.rb
- app/services/cart_service.rb
- engines/order_management/app/services/order_management/reports/enterprise_fee_summary/scope.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/enterprise_fee_calculator.rb
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_management_report.rb
- lib/open_food_network/order_cycle_permissions.rb
- lib/open_food_network/packing_report.rb
- lib/open_food_network/payments_report.rb
- lib/open_food_network/permissions.rb
- lib/open_food_network/products_cache.rb
- lib/open_food_network/xero_invoices_report.rb
Metrics/ModuleLength:
Max: 100
Exclude:
- lib/open_food_network/column_preference_defaults.rb
- spec/controllers/admin/enterprises_controller_spec.rb
- spec/controllers/admin/order_cycles_controller_spec.rb
- spec/controllers/api/order_cycles_controller_spec.rb
- spec/controllers/api/orders_controller_spec.rb
- spec/controllers/spree/api/products_controller_spec.rb
- spec/lib/open_food_network/address_finder_spec.rb
- spec/lib/open_food_network/cached_products_renderer_spec.rb
- spec/lib/open_food_network/customers_report_spec.rb
- spec/lib/open_food_network/enterprise_fee_calculator_spec.rb
- spec/lib/open_food_network/option_value_namer_spec.rb
- spec/lib/open_food_network/order_cycle_form_applicator_spec.rb
- spec/lib/open_food_network/order_cycle_permissions_spec.rb
- spec/lib/open_food_network/order_grouper_spec.rb
- spec/lib/open_food_network/permissions_spec.rb
- spec/lib/open_food_network/products_and_inventory_report_spec.rb
- spec/lib/open_food_network/products_cache_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/users_and_enterprises_report_spec.rb
- spec/models/spree/ability_spec.rb
- spec/models/spree/adjustment_spec.rb
- spec/models/spree/line_item_spec.rb
- spec/models/spree/payment_spec.rb
- spec/models/spree/product_spec.rb
- spec/models/spree/variant_spec.rb
- spec/support/request/web_helper.rb
Metrics/ParameterLists:
Max: 5
Exclude:
- app/helpers/angular_form_builder.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- lib/open_food_network/xero_invoices_report.rb
- spec/features/admin/reports_spec.rb

222
.rubocop_styleguide.yml Normal file
View File

@@ -0,0 +1,222 @@
# Our Open Food Network style guide.
#
# These are the rules we agreed upon and we work towards. Code Climate uses
# these rules to rate our code and detect new violations. But when you run
# rubocop locally, the default configuration file `.rubocop.yml` loads
# our "todo lists" to ignore all current violations.
AllCops:
TargetRubyVersion: 2.1
TargetRailsVersion: 3.2
Exclude:
- 'db/**/*'
- 'config/**/*'
- 'script/**/*'
- 'vendor/**/*'
- 'node_modules/**/*'
# Excluding: inadequate Naming/FileName rule rejects GemFile name with camelcase
- 'engines/web/Gemfile'
## OFN SETTINGS
#
# Cop settings that have been agreed upon by the OFN community
Rails:
Enabled: true
Style/Documentation:
Enabled: false
Style/StringLiterals:
Enabled: false
Style/HashSyntax:
Enabled: true
EnforcedStyle: ruby19_no_mixed_keys
Style/Send:
Enabled: true
Layout/MultilineMethodCallIndentation:
Enabled: true
EnforcedStyle: indented
Metrics/LineLength:
Max: 100
## TEMPORARY/CONTESTED SETTINGS
#
# These are still to be decided upon, but recommended for inclusion by
# oeoeaio after scrutinising offenses the codebase
# Don't think this is a big issue, mostly picking up RPSEC scope definitions
# with lamdas and RSpec '.to change{}' blocks
Lint/AmbiguousBlockAssociation:
Enabled: false
# Heaps of offences (> 100) in specs, mostly in situations where two or more
# instances of a model are required, but only one is referenced. Difficult to
# fix without making the spec look messy or rewriting it.
# Should definitely fix at some point.
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
# They should be removed or tweaked and moved above as decisions are made
# NOTE: Cops which did not fail at the time of writing were removed
Layout/DotPosition:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styledotposition
Layout/SpaceBeforeBlockBraces:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylespacebeforeblockbraces
Layout/SpaceInsideParens:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylespaceinsideparens
Style/Alias:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylealias
Style/BlockDelimiters:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styleblockdelimiters
Style/CommentAnnotation:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylecommentannotation
Style/DoubleNegation:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styledoublenegation
Style/FormatString:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styleformatstring
Style/IfUnlessModifier:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styleifunlessmodifier
Style/Lambda:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylelambda
Style/MultilineBlockChain:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylemultilineblockchain
Style/NegatedIf:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylenegatedif
Style/NegatedWhile:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylenegatedwhile
Style/ParallelAssignment:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styleparallelassignment
Style/PercentLiteralDelimiters:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylepercentliteraldelimiters
Style/Semicolon:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylesemicolon
Style/SingleLineMethods:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylesinglelinemethods
Style/TrailingCommaInArguments:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styletrailingcommainarguments
Style/TrailingCommaInArrayLiteral:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styletrailingcommainliteral
Style/TrailingCommaInHashLiteral:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#styletrailingcommainliteral
Style/WordArray:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#stylewordarray
Style/SymbolArray:
Enabled: false
StyleGuide: https://rubocop.readthedocs.io/en/latest/cops_style/#stylesymbolarray
Lint/AmbiguousRegexpLiteral:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#lintambiguousregexpliteral
Lint/AssignmentInCondition:
Enabled: false
StyleGuide: http://relaxed.ruby.style/#lintassignmentincondition
Metrics/AbcSize:
Max: 15
Metrics/BlockLength:
Max: 25
ExcludedMethods: [
"class_eval",
"collection",
"context",
"describe",
"feature",
"it",
"member",
"namespace",
"resource",
"resources",
"scenario"
]
Metrics/BlockNesting:
Max: 3
Metrics/ClassLength:
Max: 100
Metrics/ModuleLength:
Max: 100
Metrics/CyclomaticComplexity:
Max: 6
Metrics/MethodLength:
Max: 10
Metrics/ParameterLists:
Max: 5
Metrics/PerceivedComplexity:
Max: 7

File diff suppressed because it is too large Load Diff

View File

@@ -1 +1 @@
2.1.5
2.1.9

View File

@@ -1,64 +0,0 @@
language: ruby
sudo: false
cache: bundler
bundler_args: --without development
rvm:
- "2.1.5"
# Set the timezone for phantomjs with TZ
# Set the timezone for karma with TIMEZONE
#
# The test cases are roughly split according to their test times.
# It would be better to use https://github.com/ArturT/knapsack.
env:
global:
- TZ="Australia/Melbourne"
- TIMEZONE="Australia/Melbourne"
- CI_NODE_TOTAL=5
matrix:
- CI_NODE_INDEX=0
- CI_NODE_INDEX=1
- CI_NODE_INDEX=2
- CI_NODE_INDEX=3
- CI_NODE_INDEX=4 KARMA="true" GITHUB_DEPLOY="true"
before_install:
- ./script/upgrade_bundler.sh
before_script:
- cp config/database.travis.yml config/database.yml
- cp config/application.yml.example config/application.yml
- RAILS_ENV=test bundle exec rake db:create db:schema:load
# Only install PhantomJS if it is not already present (ie. cached)
- npm list -g phantomjs-prebuilt@~2.1.7 --depth=0 || npm install -g phantomjs-prebuilt@~2.1.7
- export PATH=`npm bin -g`:$PATH
- >
if [ "$KARMA" = "true" ]; then
npm install -g npm@'3.8.8'
npm install
npm install -g karma-cli@0.1.2
fi
script:
- 'if [ "$KARMA" = "true" ]; then bundle exec rake karma:run; else echo "Skipping karma run"; fi'
#- "KNAPSACK_GENERATE_REPORT=true bundle exec rspec spec"
- "bundle exec rake 'knapsack:rspec[--tag ~performance]'"
after_success:
- >
if [ "$GITHUB_DEPLOY" = "true" -a "$TRAVIS_PULL_REQUEST" = "false" -a -n "$TRAVIS_BRANCH" -a "$TRAVIS_BRANCH" != "transifex" -a -n "$GITHUB_API_SECRET" ]; then
description="`git show "$TRAVIS_BRANCH" -s --oneline --no-color`"
data="{
\"ref\":\"$TRAVIS_BRANCH\",
\"description\":\"$description\",
\"environment\":\"staging\",
\"required_contexts\":[]}"
curl -u "$GITHUB_API_SECRET" -d "$data" "https://api.github.com/repos/$TRAVIS_REPO_SLUG/deployments"
else
echo "Not deploying on this build."
fi
notifications:
email: false

View File

@@ -1,36 +1,64 @@
See this here post on raising a github issue:
https://community.openfoodnetwork.org/t/how-to-raise-a-github-issue/912
# 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. Here are some instructions for
contributing code to Open Food Network. See the [developer wiki](https://github.com/openfoodfoundation/openfoodnetwork/wiki) for more information.
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.
Fork, then clone the repo:
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.
git clone git@github.com:your-username/openfoodnetwork.git
## Set up
Follow the instructions in README.markdown to set up your machine.
Please follow the [GETTING_STARTED](GETTING_STARTED.md) guide to set up your local dev environment.
Make sure the tests pass:
This guide assumes that the git remote name of the main repo is `upstream` and that your fork is named `origin`.
rspec spec
Create a new branch on your local machine to make your changes against (based on `upstream/master`):
Make your change. Add tests for your change. Make the tests pass:
git checkout -b branch-name-here --no-track upstream/master
rspec spec
If you want to run the whole test suite, we recommend using a free CI service to run your tests in parallel. Running the whole suite locally in series is likely to take > 40 minutes. [TravisCI][travis] and [SemaphoreCI][semaphore] both work great in our experience. Either way, make sure the tests pass on your new branch:
Push to your fork and [submit a pull request][pr].
bundle exec rspec spec
[pr]: https://github.com/openfoodfoundation/openfoodnetwork/compare/
## Internationalisation (i18n)
At this point you're waiting on us. We may suggest some changes or
improvements or alternatives.
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.
To increase the chance that your pull request is swiftly accepted:
## Making a change
Make your changes to the codebase. We recommend using TDD. Add a test, make changes and get the test suite back to green.
bundle exec rspec spec
Once the tests are passing you can commit your changes. See [Making a great commit][great-commit] for more tips.
git add .
git commit -m "Add a concise commit message describing your change here"
Push your changes to a branch on your fork:
git push origin branch-name-here
## Submitting a Pull Request
Use the GitHub UI to submit a [new pull request][pr] against upstream/master. To increase the chances that your pull request is swiftly accepted please have a look at our guide to [making a great pull request][great-pr].
TL;DR:
* Write tests
* Make sure the whole test suite is passing
* Keep your PR small, with a single focus
* Maintain a clean commit history
* Use a style consistent with the rest of the codebase
* Before submitting, [rebase your work][rebase] on the current master branch
From here, your pull request will progress through the [Review, Test, Merge & Deploy process][process].
[pr]: https://github.com/openfoodfoundation/openfoodnetwork/compare/
[great-pr]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Making-a-great-pull-request
[great-commit]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Making-a-great-commit
[process]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/The-process-of-review%2C-test%2C-merge-and-deploy
[rebase]: https://www.atlassian.com/git/tutorials/merging-vs-rebasing/workflow-walkthrough
[travis]: https://travis-ci.org/
[semaphore]: https://semaphoreci.com/
[slack-dev]: https://openfoodnetwork.slack.com/messages/C2GQ45KNU
[ofn-transifex]: https://www.transifex.com/open-food-foundation/open-food-network/
[i18n]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/i18n

47
DOCKER.md Normal file
View File

@@ -0,0 +1,47 @@
### Docker
It is possible to setup the Open Food Network app easily with Docker and Docker Compose.
The objective is to spare configuration time, in order to help people testing the app and contribute to it.
It can also be used as documentation. It is not perfect but it is used in many other projects and many devs are used to it nowadays.
### Install Docker
Please check the documentation here, https://docs.docker.com/install/ to install Docker.
For Docker Compose, information are here: https://docs.docker.com/compose/install/.
Better to have at least 2GB free on your computer in order to download images and create containers for Open Food Network app.
### Use Docker with Open Food Network
Open a terminal with a shell.
Clone the repository:
```sh
$ git clone git@github.com:openfoodfoundation/openfoodnetwork.git
```
Go at the root of the app:
```sh
$ cd openfoodnetwork
```
Download the Docker images and build the containers:
```sh
$ docker-compose build
```
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.
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.

31
Dockerfile Normal file
View File

@@ -0,0 +1,31 @@
FROM ubuntu:18.04
# Install all the requirements
RUN apt-get update && apt-get install -y curl git build-essential software-properties-common wget zlib1g-dev libssl1.0-dev libreadline-dev libyaml-dev libffi-dev libxml2-dev libxslt1-dev wait-for-it
# Setup ENV variables
ENV PATH /usr/local/src/rbenv/shims:/usr/local/src/rbenv/bin:$PATH
ENV RBENV_ROOT /usr/local/src/rbenv
ENV RUBY_VERSION 2.1.9
ENV CONFIGURE_OPTS --disable-install-doc
# 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 && \
${RBENV_ROOT}/plugins/ruby-build/install.sh && \
echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh && \
rbenv install $RUBY_VERSION && \
rbenv global $RUBY_VERSION && \
gem install bundler --version=1.17.2
# 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
ENV BUNDLE_PATH /bundles
COPY . /usr/src/app/
WORKDIR /usr/src/app

128
GETTING_STARTED.md Normal file
View File

@@ -0,0 +1,128 @@
### Getting Started
This is a general guide to setting up an Open Food Network development environment on your local machine.
The following guides are located in the wiki and provide more OS-specific step-by-step instructions:
- [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
* PostgreSQL database
* PhantomJS (for testing)
* See Gemfile for a list of gems required
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/).
For those new to Rails, the following tutorial will help get you up to speed with configuring a [Rails environment](http://guides.rubyonrails.org/getting_started.html).
### Get it
If you're planning on contributing code to the project (which we [LOVE](CONTRIBUTING.md)), it is a good idea to begin by forking this repo using the `Fork` button in the top-right corner of this screen. You should then be able to use `git clone` to copy your fork onto your local machine.
git clone https://github.com/YOUR_GITHUB_USERNAME_HERE/openfoodnetwork
Jump into your new local copy of the Open Food Network:
cd openfoodnetwork
And then add an `upstream` remote that points to the main repo:
git remote add upstream https://github.com/openfoodfoundation/openfoodnetwork
Fetch the latest version of `master` from `upstream` (ie. the main repo):
git fetch upstream master
### Get it running
First, you need to create the database user the app will use by manually typing the following in your terminal:
```sh
$ sudo -u postgres psql -c "CREATE USER ofn WITH SUPERUSER CREATEDB PASSWORD 'f00d'"
```
This will create the "ofn" user as superuser and allowing it to create databases. If this command fails, check the [troubleshooting section](#creating-the-database) for an alternative.
Once done, run `script/setup`. If the script succeeds you're ready to start developing. If not, take a look at the output as it should be informative enough to help you troubleshoot.
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:
email: spree@example.com
password: spree123
### Testing
Tests, both unit and integration, are based on RSpec. To run the test suite, first prepare the test database:
bundle exec rake db:test:prepare
Then the main application tests can be run with:
bundle exec rspec spec
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: The time zone on your machine should match the one defined in `config/application.yml`.
The project is configured to use [Zeus][zeus] to reduce the pre-test startup time while Rails loads. See the [Zeus GitHub page][zeus] for usage instructions.
Once [npm dependencies are installed][karma], AngularJS tests can be run with:
./script/karma run
If you want karma to automatically rerun the tests on file modification, use:
./script/karma start
### Multilingual
Do not forget to run `rake tmp:cache:clear` after locales are updated to reload I18n js translations.
### Rubocop
The project is configured to use [rubocop][rubocop] to automatically check for style and syntax errors.
You can run rubocop against your changes using:
rubocop
### Troubleshooting
Below are fixes to potential issues that can happen during the installation process. If these don't solve the problem, or it's not listed, feel free to reach out to the [Developer Community][slack-dev] on slack. We usually respond pretty quickly.
#### Creating the database
If the ```$ sudo -u postgres psql -c "CREATE USER ofn WITH SUPERUSER CREATEDB PASSWORD 'f00d'"``` command doesn't work, you can run the following commands instead:
```
$ createuser --superuser --pwprompt ofn
Enter password for new role: f00d
Enter it again: f00d
$ createdb open_food_network_dev --owner=ofn
$ 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)
[ubuntu]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Development-Environment-Setup:-Ubuntu
[wiki]: https://github.com/openfoodfoundation/openfoodnetwork/wiki
[zeus]: https://github.com/burke/zeus
[rubocop]: https://rubocop.readthedocs.io/en/latest/
[karma]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Karma
[slack-dev]: https://openfoodnetwork.slack.com/messages/C2GQ45KNU

159
Gemfile
View File

@@ -1,138 +1,175 @@
source 'https://rubygems.org'
ruby "2.1.5"
ruby "2.1.9"
git_source(:github) { |repo_name| "https://github.com/#{repo_name}.git" }
gem 'rails', '3.2.21'
gem 'rails-i18n', '~> 3.0.0'
gem 'i18n', '~> 0.6.11'
gem 'i18n-js', '~> 3.0.0'
gem 'i18n-js', '~> 3.3.0'
gem 'rails', '~> 3.2.22'
gem 'rails-i18n', '~> 3.0.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 "order_management", path: "./engines/order_management"
gem 'web', path: './engines/web'
gem 'pg'
gem 'spree', github: 'openfoodfoundation/spree', branch: 'step-6-adjustment-state-migration', ref: '48febb2'
# OFN-maintained and patched version of Spree v2.0.4. See
# https://github.com/openfoodfoundation/openfoodnetwork/wiki/Spree-2.0-upgrade
# for details.
gem 'spree_api', github: 'openfoodfoundation/spree', branch: '2-0-4-stable'
gem 'spree_backend', github: 'openfoodfoundation/spree', branch: '2-0-4-stable'
gem 'spree_core', github: 'openfoodfoundation/spree', branch: '2-0-4-stable'
gem 'spree_i18n', github: 'spree/spree_i18n', branch: '1-3-stable'
gem 'spree_auth_devise', github: 'openfoodfoundation/spree_auth_devise', branch: 'spree-upgrade-intermediate'
# Our branch contains two 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 => "spree-upgrade-intermediate"
#gem 'spree_paypal_express', :github => "spree-contrib/better_spree_paypal_express", :branch => "1-3-stable"
gem 'spree_paypal_express', github: "openfoodfoundation/better_spree_paypal_express", branch: "2-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 'devise', '~> 2.2.5'
gem 'devise-encryptable', '0.2.0'
gem 'jwt', '~> 2.2'
gem 'oauth2', '~> 1.4.2' # Used for Stripe Connect
gem 'delayed_job_active_record'
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'
gem 'simple_form', github: 'RohanM/simple_form'
gem 'unicorn'
# 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 'bugsnag'
gem 'newrelic_rpm'
gem 'db2fog'
gem 'haml'
gem 'rabl'
gem 'redcarpet'
gem 'sass', "~> 3.3"
gem 'sass-rails', '~> 3.2.3', groups: [:default, :assets]
gem 'redcarpet'
gem 'aws-sdk'
gem 'db2fog'
gem 'andand'
gem 'truncate_html'
gem 'representative_view'
gem 'rabl'
gem "active_model_serializers"
gem 'oj'
gem 'deface', :github => 'spree/deface', :ref => '1110a13'
gem 'paperclip'
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 "active_model_serializers", "0.8.4"
gem 'acts-as-taggable-on', '~> 3.4'
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'
gem 'gmaps4rails'
gem 'oj'
gem 'paper_trail', '~> 5.2.3'
gem 'paperclip', '~> 3.4.1'
gem 'rack-rewrite'
gem 'rack-ssl', require: 'rack/ssl'
gem 'roadie-rails', '~> 1.1.1'
gem 'spinjs-rails'
gem 'rack-ssl', :require => 'rack/ssl'
gem 'custom_error_message', :github => 'jeremydurham/custom-err-msg'
gem 'angularjs-file-upload-rails', '~> 1.1.6'
gem 'roadie-rails', '~> 1.0.3'
gem 'figaro'
gem 'blockenspiel'
gem 'acts-as-taggable-on', '~> 3.4'
gem 'paper_trail', '~> 3.0.8'
gem 'diffy'
gem 'combine_pdf'
gem 'wicked_pdf'
gem 'wkhtmltopdf-binary'
gem 'foreigner'
gem 'immigrant'
gem 'roo', '~> 2.7.0'
gem 'roo-xls', '~> 1.1.0'
gem 'whenever', require: false
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'compass-rails'
gem 'coffee-rails', '~> 3.2.1'
gem 'compass-rails'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
gem 'therubyracer'
gem 'mini_racer', '0.1.15'
# Previously we found that libv8 6.7.288.46.1 breakis the compilation of mini_racer.
# Now we see that we need to set the version explicitly. Nothing else depends on libv8.
gem 'libv8', '6.3.292.48.1'
gem 'uglifier', '>= 1.0.3'
gem 'turbo-sprockets-rails3'
gem 'angular-rails-templates', '~> 0.3.0'
gem 'foundation-icons-sass-rails'
gem 'momentjs-rails'
gem 'angular-rails-templates', '~> 0.2.0'
gem 'turbo-sprockets-rails3'
end
gem "foundation-rails"
gem 'foundation_rails_helper', github: 'willrjmarshall/foundation_rails_helper', branch: "rails3"
gem 'jquery-rails'
gem 'jquery-migrate-rails'
gem 'css_splitter'
gem 'jquery-rails', '3.0.4'
gem 'ofn-qz', github: 'openfoodfoundation/ofn-qz'
gem 'ofn-qz', github: 'openfoodfoundation/ofn-qz', ref: '60da2ae4c44cbb4c8d602f59fb5fff8d0f21db3c'
group :production, :staging do
gem 'ddtrace'
end
group :test, :development do
# Pretty printed test output
gem 'turn', '~> 0.8.3', :require => false
gem 'fuubar'
gem 'rspec-rails'
gem 'shoulda-matchers'
gem 'factory_girl_rails', :require => false
gem 'capybara'
gem 'database_cleaner', '0.7.1', :require => false
gem 'awesome_print'
gem 'letter_opener'
gem 'timecop'
gem 'poltergeist'
gem 'rspec-retry'
gem 'json_spec'
gem 'unicorn-rails'
gem 'atomic'
gem 'awesome_print'
gem 'capybara', '>= 2.15.4'
gem 'database_cleaner', '0.7.1', require: false
gem "factory_bot_rails", require: false
gem 'fuubar', '~> 2.4.1'
gem 'json_spec', '~> 1.1.4'
gem 'knapsack'
gem 'letter_opener', '>= 1.4.1'
gem 'rspec-rails', ">= 3.5.2"
gem 'rspec-retry'
gem 'selenium-webdriver'
gem 'shoulda-matchers'
gem 'timecop'
gem 'unicorn-rails'
gem 'webdrivers', '3.8.1'
end
group :test do
gem 'simplecov', require: false
gem 'webmock'
# See spec/spec_helper.rb for instructions
#gem 'perftools.rb'
# gem 'perftools.rb'
end
group :development do
gem 'pry-byebug'
gem 'byebug', '~> 9.0.0' # 9.1 requires ruby 2.2
gem 'debugger-linecache'
gem 'guard'
gem 'guard-livereload'
gem 'rack-livereload'
gem 'guard-rails'
gem 'guard-rspec'
gem 'parallel_tests'
gem 'listen', '3.0.8' # 3.1.0 requires ruby 2.2
gem "newrelic_rpm", "~> 3.0"
gem 'pry-byebug', '>= 3.4.3'
gem 'rubocop', '>= 0.49.1'
gem 'spring', '1.7.2'
gem 'spring-commands-rspec'
# 1.0.9 fixed openssl issues on macOS https://github.com/eventmachine/eventmachine/issues/602
# While we don't require this gem directly, no dependents forced the upgrade to a version
# greater than 1.0.9, so we just required the latest available version here.
gem 'eventmachine', '>= 1.2.3'
gem 'rack-mini-profiler', '< 1.0.0'
end

File diff suppressed because it is too large Load Diff

View File

@@ -1,49 +0,0 @@
# A sample Guardfile
# More info at https://github.com/guard/guard#readme
guard 'livereload' do
watch(%r{app/views/.+\.(erb|haml|slim)$})
watch(%r{app/helpers/.+\.rb})
watch(%r{public/.+\.(css|js|html)})
#watch(%r{config/locales/.+\.yml})
# Rails Assets Pipeline
watch(%r{(app|vendor)(/assets/\w+/(.+\.(css|js|html|png|jpg))).*}) { |m| "/assets/#{m[3]}" }
end
#guard 'rails' do
#watch('Gemfile.lock')
#watch(%r{^(config|lib)/.*})
#end
#guard 'zeus' do
## uses the .rspec file
## --colour --fail-fast --format documentation --tag ~slow
#watch(%r{^spec/.+_spec\.rb$})
#watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
#watch(%r{^app/(.+)\.haml$}) { |m| "spec/#{m[1]}.haml_spec.rb" }
#watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
#watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/requests/#{m[1]}_spec.rb"] }
#end
#guard :rspec do
#watch(%r{^spec/.+_spec\.rb$})
#watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
#watch('spec/spec_helper.rb') { "spec" }
## Rails example
#watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
#watch(%r{^app/(.*)(\.erb|\.haml|\.slim)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
#watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
#watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
#watch('config/routes.rb') { "spec/routing" }
#watch('app/controllers/application_controller.rb') { "spec/controllers" }
## Capybara features specs
#watch(%r{^app/views/(.+)/.*\.(erb|haml|slim)$}) { |m| "spec/features/#{m[1]}_spec.rb" }
## Turnip features and steps
#watch(%r{^spec/acceptance/(.+)\.feature$})
#watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance' }
#end

View File

@@ -1 +0,0 @@
web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb

132
README.md
View File

@@ -1,131 +1,41 @@
[![Build Status](https://travis-ci.org/openfoodfoundation/openfoodnetwork.svg?branch=master)](https://travis-ci.org/openfoodfoundation/openfoodnetwork)
[![Build Status](https://semaphoreci.com/api/v1/openfoodfoundation/openfoodnetwork-2/branches/master/badge.svg)](https://semaphoreci.com/openfoodfoundation/openfoodnetwork-2)
[![Code Climate](https://codeclimate.com/github/openfoodfoundation/openfoodnetwork.png)](https://codeclimate.com/github/openfoodfoundation/openfoodnetwork)
# 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, 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.
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!
* Fill in this short survey to tell us who you are and what you want to do with OFN: https://docs.google.com/a/eaterprises.com.au/forms/d/1zxR5vSiU9CigJ9cEaC8-eJLgYid8CR8er7PPH9Mc-30/edit#
* Find out more and join in the conversation - http://openfoodnetwork.org
* Join the conversation [on Slack][slack-invite]. Make sure you introduce yourself in the #general channel
* Head to [https://openfoodnetwork.org](https://openfoodnetwork.org) for more information about the global OFN project.
* Check out the [User Guide](https://guide.openfoodnetwork.org/) for a list of features and tutorials.
* Join our [discussion forum](https://community.openfoodnetwork.org).
## Contributing
## Getting started
If you are interested in contributing to the OFN in any capacity, please introducing yourself [on Slack][slack-invite], and have a look through our [Contributor Guide][contributor-guide]
Below are instructions for setting up a development environment for Open Food Network. More information is in the [developer wiki](https://github.com/openfoodfoundation/openfoodnetwork/wiki).
Our [GETTING_STARTED](GETTING_STARTED.md) and [CONTRIBUTING](CONTRIBUTING.md) guides are the best place to start for developers looking to set up a development environment and make contributions to the codebase.
If you're interested in provisioning a server, see [the project's Ansible playbooks](https://github.com/openfoodfoundation/ofn_deployment).
## Provisioning
If you're interested in provisioning a server, see [ofn-install][ofn-install] for the project's Ansible playbooks.
### Dependencies
We also have a [Super Admin Guide][super-admin-guide] to help with configuration of new servers.
* Rails 3.2.x
* Ruby 2.1.5
* PostgreSQL database
* PhantomJS (for testing)
* See Gemfile for a list of gems required
### Get it
The source code is managed with Git (a version control system) and
hosted at GitHub.
You can view the code at:
https://github.com/openfoodfoundation/openfoodnetwork
You can download the source with the command:
git clone https://github.com/openfoodfoundation/openfoodnetwork.git
### Get it running
For those new to Rails, the following tutorial will help get you up to speed with configuring a Rails environment: http://guides.rubyonrails.org/getting_started.html .
First, check your dependencies: Ensure that you have Ruby 2.1.5 installed:
ruby --version
Install the project's gem dependencies:
cd openfoodnetwork
./script/upgrade_bundler.sh
bundle install
Configure the site:
cp config/application.yml.example config/application.yml
edit config/application.yml
Create a PostgreSQL user:
* Login as your system postrgresql priviledged user: `sudo -i -u postgres` (this may vary on your OS). Now your prompt looks like: `[postgres@your_host ~]$`
* Create the `ofn` database superuser and give it the password `f00d`:
```
createuser -s -P ofn
```
Create the development and test databases, using the settings specified in `config/database.yml`, and populate them with a schema and seed data:
rake db:setup
Load some default data for your environment:
rake openfoodnetwork:dev:load_sample_data
At long last, your dreams of spinning up a development server can be realised:
rails server
### Testing
Tests, both unit and integration, are based on RSpec. To run the test suite, first prepare the test database:
bundle exec rake db:test:prepare
Then the tests can be run with:
bundle exec rspec spec
The site is configured to use
[Zeus](https://github.com/burke/zeus) to reduce the pre-test
startup time while Rails loads. See the Zeus github page for
usage instructions.
Once [npm dependencies are
installed](https://github.com/openfoodfoundation/openfoodnetwork/wiki/Karma), AngularJS tests can be run with:
./script/karma run
If you want karma to automatically rerun the tests on file modification, use:
./script/karma start
### Multilingual
Do not forget to run `rake tmp:cache:clear` after locales are updated to reload I18n js translations.
## Credits
* Andrew Spinks (http://github.com/andrewspinks)
* Rohan Mitchell (http://github.com/rohanm)
* Rob Harrington (http://github.com/oeoeaio)
* Alex Serdyuk (http://github.com/alexs333)
* David Cook (http://github.com/dacook)
* Will Marshall (http://soundcloud.com/willmarshall)
* Laura Summers (https://github.com/summerscope)
* Maikel Linke (https://github.com/mkllnk)
* Lynne Davis (https://github.com/lin-d-hop)
* Paul Mackay (https://github.com/pmackay)
* Steve Petitt (https://github.com/stveep)
## Testing
We use [BrowserStack](https://www.browserstack.com/) as a manual testing tool. BrowserStack provides open source projects with unlimited and free of charge accounts. A big thanks to them!
## Licence
Copyright (c) 2012 - 2015 Open Food Foundation, released under the AGPL licence.
Copyright (c) 2012 - 2019 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
[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

0
Rakefile Normal file → Executable file
View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 162 KiB

View File

@@ -1,67 +1,110 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
]>
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
<metadata>
<sfw xmlns="&ns_sfw;">
<slices></slices>
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
</sfw>
</metadata>
<g>
<path opacity="0.25" fill="#282828" 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"/>
<g>
<path fill="#FFFFFF" 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"/>
<g>
<path fill="#0B8C61" d="M9.46,8.846L9.458,9.319l-0.003,2.397c1.098-0.034,2.3-0.052,3.438-0.052c0.201,0,0.401,0.001,0.6,0.002
l-0.935-2.824L9.46,8.846z"/>
<circle fill="#0B8C61" cx="8.728" cy="17.454" r="1.569"/>
<path fill="#0B8C61" d="M12.395,17.13c-0.015-0.107-0.027-0.199-0.037-0.282c-0.047-0.382-0.165-0.741-0.325-1.075
c-0.049-0.096-0.097-0.193-0.155-0.285c-0.038-0.063-0.078-0.124-0.119-0.184c-0.514-0.723-1.278-1.251-2.166-1.464
c-0.202-0.04-0.409-0.061-0.619-0.061c-0.295,0-0.592,0.041-0.881,0.122c-0.276,0.077-0.487,0.112-0.685,0.112
c-0.027,0-0.048-0.008-0.074-0.009C5.969,14.557,5,15.892,5,17.455c0,2.055,1.672,3.727,3.728,3.727
c2.035,0,3.689-1.642,3.719-3.671l-0.041-0.296L12.395,17.13z M8.728,19.523c-1.142,0-2.07-0.928-2.07-2.069
s0.928-2.07,2.07-2.07c1.141,0,2.069,0.929,2.069,2.07S9.869,19.523,8.728,19.523z"/>
<circle fill="#0B8C61" cx="20.826" cy="19.013" r="1.006"/>
<path fill="#0B8C61" d="M22.72,15.398c0.13-0.696,0.212-1.403,0.271-2.108c0.055-0.659-0.112-0.814-0.758-0.839
c-0.961-0.034-1.848-0.071-2.808-0.109c-0.029-0.001-0.077-0.022-0.077-0.06c0-0.724,0.037-2.484,0.037-2.484
S19.196,9.66,18.931,9.66c-0.116,0-0.247,0.026-0.383,0.103c0,0.821,0,1.654,0,2.527c0,0-1.172-0.031-2.844-0.065
c-0.074-0.002-0.281-0.128-0.378-0.392c-0.251-0.694-0.8-2.045-1.52-4.126c0,0-0.373-0.888-1.316-0.888c-0.781,0-4.679,0-4.679,0
v5.199c0,0-0.353,0.148-0.649,0.178c-0.078,0.472-0.067,0.711,0.115,0.784c0.46-0.15,0.942-0.252,1.451-0.252
c0.389,0,0.761,0.061,1.122,0.149c1.119,0.237,2.101,0.923,2.748,1.879c0.034,0.048,0.064,0.097,0.096,0.147
c0.094,0.151,0.179,0.306,0.255,0.47c0.083,0.167,0.154,0.338,0.217,0.515c0.004,0.012,0.008,0.024,0.011,0.037
c0.127,0.368,0.206,0.754,0.238,1.156c0.101,0.014,0.196,0.036,0.289,0.036c0.007,0,0.013,0,0.02,0
c2.176-0.056,4.355-0.06,6.529-0.169c-0.906,0.251-1.575,1.082-1.575,2.067c0,1.184,0.962,2.147,2.148,2.147
c1.184,0,2.147-0.963,2.147-2.147c0-1.071-0.79-1.958-1.816-2.119C22.761,16.794,22.451,16.842,22.72,15.398z M12.893,12.163
c-1.343,0-2.729,0.025-3.938,0.069l0.003-2.916l0.004-0.97l3.957-0.006l1.263,3.813l0.045,0.018
C13.793,12.166,13.345,12.163,12.893,12.163z M22.082,19.013c0,0.693-0.564,1.257-1.256,1.257c-0.692,0-1.256-0.564-1.256-1.257
c0-0.692,0.564-1.255,1.256-1.255C21.518,17.758,22.082,18.321,22.082,19.013z"/>
<path fill="#0B8C61" 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 M23.973,19.013
c0,1.735-1.412,3.147-3.147,3.147c-1.736,0-3.148-1.412-3.148-3.147c0-0.34,0.055-0.67,0.158-0.98
c-0.652,0.016-1.301,0.027-1.94,0.039c-0.716,0.013-1.431,0.025-2.137,0.043l-0.037,0.001h-0.018
c-0.102,0-0.208-0.014-0.315-0.03c-0.312,2.306-2.272,4.096-4.661,4.096C6.121,22.181,4,20.061,4,17.455
c0-1.725,0.939-3.222,2.323-4.047c-0.278-0.463-0.209-1.002-0.148-1.375L6.3,11.276l0.511-0.051V6.819v-1h1h4.679
c1.269,0,2.003,0.943,2.238,1.5l0.012,0.03l0.011,0.03c0.497,1.435,0.905,2.503,1.203,3.283c0.083,0.217,0.156,0.408,0.217,0.572
c0.531,0.011,0.998,0.022,1.376,0.031V9.763V9.177l0.512-0.286c0.273-0.153,0.566-0.23,0.872-0.23
c0.55,0,0.938,0.254,1.044,0.332l0.419,0.307l-0.011,0.52c0,0.001-0.017,0.815-0.028,1.56c0.635,0.025,1.257,0.05,1.916,0.073
c0.277,0.011,0.925,0.036,1.358,0.525c0.384,0.434,0.393,0.974,0.358,1.396c-0.07,0.848-0.161,1.55-0.284,2.208
c-0.04,0.216-0.066,0.397-0.089,0.547c-0.062,0.425-0.158,0.742-0.292,0.981C23.731,17.644,23.973,18.308,23.973,19.013z"/>
</g>
</g>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns="&amp;ns_sfw;"
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"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="28px"
height="33px"
viewBox="0 0 28 33"
enable-background="new 0 0 28 33"
xml:space="preserve"
sodipodi:docname="green_producer.svg"
inkscape:version="0.92.3 (2405546, 2018-03-11)"><defs
id="defs29" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1803"
inkscape:window-height="857"
id="namedview27"
showgrid="false"
inkscape:zoom="17.609546"
inkscape:cx="3.0055332"
inkscape:cy="16.5"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="g20" />
<metadata
id="metadata2">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
height="96"
width="16383"
y="-85.5"
x="-8112"
bottomLeftOrigin="true" />
</ns:sfw>
<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>
<g
id="g24">
<path
opacity="0.25"
fill="#282828"
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"
id="path4" />
<g
id="g22">
<path
fill="#FFFFFF"
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"
id="path6" />
<g
id="g20">
<path
fill="#C1122B"
d="M9.46,8.846L9.458,9.319l-0.003,2.397c1.098-0.034,2.3-0.052,3.438-0.052c0.201,0,0.401,0.001,0.6,0.002 l-0.935-2.824L9.46,8.846z"
id="path8"
style="fill:#0b8c61;fill-opacity:1" />
<circle
fill="#C1122B"
cx="8.728"
cy="17.454"
r="1.569"
id="circle10"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M12.395,17.13c-0.015-0.107-0.027-0.199-0.037-0.282c-0.047-0.382-0.165-0.741-0.325-1.075 c-0.049-0.096-0.097-0.193-0.155-0.285c-0.038-0.063-0.078-0.124-0.119-0.184c-0.514-0.723-1.278-1.251-2.166-1.464 c-0.202-0.04-0.409-0.061-0.619-0.061c-0.295,0-0.592,0.041-0.881,0.122c-0.276,0.077-0.487,0.112-0.685,0.112 c-0.027,0-0.048-0.008-0.074-0.009C5.969,14.557,5,15.892,5,17.455c0,2.055,1.672,3.727,3.728,3.727 c2.035,0,3.689-1.642,3.719-3.671l-0.041-0.296L12.395,17.13z M8.728,19.523c-1.142,0-2.07-0.928-2.07-2.069 s0.928-2.07,2.07-2.07c1.141,0,2.069,0.929,2.069,2.07S9.869,19.523,8.728,19.523z"
id="path12"
style="fill:#0b8c61;fill-opacity:1" />
<circle
fill="#C1122B"
cx="20.826"
cy="19.013"
r="1.006"
id="circle14"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M22.72,15.398c0.13-0.696,0.212-1.403,0.271-2.108c0.055-0.659-0.112-0.814-0.758-0.839 c-0.961-0.034-1.848-0.071-2.808-0.109c-0.029-0.001-0.077-0.022-0.077-0.06c0-0.724,0.037-2.484,0.037-2.484 S19.196,9.66,18.931,9.66c-0.116,0-0.247,0.026-0.383,0.103c0,0.821,0,1.654,0,2.527c0,0-1.172-0.031-2.844-0.065 c-0.074-0.002-0.281-0.128-0.378-0.392c-0.251-0.694-0.8-2.045-1.52-4.126c0,0-0.373-0.888-1.316-0.888c-0.781,0-4.679,0-4.679,0 v5.199c0,0-0.353,0.148-0.649,0.178c-0.078,0.472-0.067,0.711,0.115,0.784c0.46-0.15,0.942-0.252,1.451-0.252 c0.389,0,0.761,0.061,1.122,0.149c1.119,0.237,2.101,0.923,2.748,1.879c0.034,0.048,0.064,0.097,0.096,0.147 c0.094,0.151,0.179,0.306,0.255,0.47c0.083,0.167,0.154,0.338,0.217,0.515c0.004,0.012,0.008,0.024,0.011,0.037 c0.127,0.368,0.206,0.754,0.238,1.156c0.101,0.014,0.196,0.036,0.289,0.036c0.007,0,0.013,0,0.02,0 c2.176-0.056,4.355-0.06,6.529-0.169c-0.906,0.251-1.575,1.082-1.575,2.067c0,1.184,0.962,2.147,2.148,2.147 c1.184,0,2.147-0.963,2.147-2.147c0-1.071-0.79-1.958-1.816-2.119C22.761,16.794,22.451,16.842,22.72,15.398z M12.893,12.163 c-1.343,0-2.729,0.025-3.938,0.069l0.003-2.916l0.004-0.97l3.957-0.006l1.263,3.813l0.045,0.018 C13.793,12.166,13.345,12.163,12.893,12.163z M22.082,19.013c0,0.693-0.564,1.257-1.256,1.257c-0.692,0-1.256-0.564-1.256-1.257 c0-0.692,0.564-1.255,1.256-1.255C21.518,17.758,22.082,18.321,22.082,19.013z"
id="path16"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
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 M23.973,19.013 c0,1.735-1.412,3.147-3.147,3.147c-1.736,0-3.148-1.412-3.148-3.147c0-0.34,0.055-0.67,0.158-0.98 c-0.652,0.016-1.301,0.027-1.94,0.039c-0.716,0.013-1.431,0.025-2.137,0.043l-0.037,0.001h-0.018 c-0.102,0-0.208-0.014-0.315-0.03c-0.312,2.306-2.272,4.096-4.661,4.096C6.121,22.181,4,20.061,4,17.455 c0-1.725,0.939-3.222,2.323-4.047c-0.278-0.463-0.209-1.002-0.148-1.375L6.3,11.276l0.511-0.051V6.819v-1h1h4.679 c1.269,0,2.003,0.943,2.238,1.5l0.012,0.03l0.011,0.03c0.497,1.435,0.905,2.503,1.203,3.283c0.083,0.217,0.156,0.408,0.217,0.572 c0.531,0.011,0.998,0.022,1.376,0.031V9.763V9.177l0.512-0.286c0.273-0.153,0.566-0.23,0.872-0.23 c0.55,0,0.938,0.254,1.044,0.332l0.419,0.307l-0.011,0.52c0,0.001-0.017,0.815-0.028,1.56c0.635,0.025,1.257,0.05,1.916,0.073 c0.277,0.011,0.925,0.036,1.358,0.525c0.384,0.434,0.393,0.974,0.358,1.396c-0.07,0.848-0.161,1.55-0.284,2.208 c-0.04,0.216-0.066,0.397-0.089,0.547c-0.062,0.425-0.158,0.742-0.292,0.981C23.731,17.644,23.973,18.308,23.973,19.013z"
id="path18"
style="fill:#0b8c61;fill-opacity:1" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -1,69 +1,110 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
]>
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
<metadata>
<sfw xmlns="&ns_sfw;">
<slices></slices>
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
</sfw>
</metadata>
<g>
<path opacity="0.25" fill="#282828" 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"/>
<g>
<path fill="#FFFFFF" 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"/>
<g>
<path fill="#0B8C61" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.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.333C28,6.717,21.72,0,14,0z M14.002,30.908
C10.865,28.805,1,21.533,1,13.333C1,7.511,6.56,1,14,1c7.44,0,13,6.511,13,12.333C27,21.682,17.14,28.843,14.002,30.908z"/>
<path fill="#0B8C61" d="M23.703,15.582c0.123-0.658,0.214-1.36,0.284-2.208c0.035-0.422,0.026-0.962-0.358-1.396
c-0.433-0.489-1.081-0.514-1.358-0.525c-0.659-0.024-1.281-0.048-1.916-0.073c0.011-0.745,0.028-1.56,0.028-1.56l0.011-0.52
l-0.419-0.307c-0.106-0.078-0.495-0.332-1.044-0.332c-0.306,0-0.599,0.077-0.872,0.23l-0.512,0.286v0.586v1.502
c-0.378-0.009-0.845-0.02-1.376-0.031c-0.062-0.164-0.135-0.355-0.217-0.572c-0.298-0.78-0.706-1.847-1.203-3.283l-0.011-0.03
l-0.013-0.03c-0.234-0.557-0.969-1.5-2.238-1.5H7.811h-1v1v4.407L6.3,11.276l-0.125,0.757c-0.061,0.373-0.13,0.911,0.148,1.375
C4.939,14.233,4,15.729,4,17.455c0,2.606,2.121,4.727,4.728,4.727c2.39,0,4.349-1.79,4.661-4.096
c0.107,0.016,0.212,0.03,0.315,0.03h0.018l0.037-0.001c0.706-0.018,1.421-0.031,2.137-0.043c0.639-0.011,1.288-0.023,1.94-0.039
c-0.103,0.311-0.158,0.641-0.158,0.98c0,1.735,1.412,3.147,3.148,3.147c1.736,0,3.147-1.412,3.147-3.147
c0-0.706-0.242-1.369-0.651-1.903c0.135-0.239,0.23-0.556,0.292-0.981C23.636,15.978,23.662,15.798,23.703,15.582z M8.728,21.181
C6.672,21.181,5,19.51,5,17.455c0-1.562,0.969-2.898,2.335-3.451c0.026,0.001,0.046,0.009,0.074,0.009
c0.197,0,0.409-0.034,0.685-0.112c0.289-0.081,0.586-0.122,0.881-0.122c0.21,0,0.417,0.021,0.619,0.061
c0.888,0.213,1.652,0.741,2.166,1.464c0.041,0.06,0.082,0.121,0.119,0.184c0.057,0.091,0.105,0.188,0.155,0.285
c0.16,0.334,0.279,0.693,0.325,1.075c0.009,0.083,0.022,0.176,0.037,0.283l0.011,0.082l0.041,0.296
C12.417,19.539,10.763,21.181,8.728,21.181z M22.973,19.013c0,1.184-0.964,2.147-2.147,2.147c-1.186,0-2.148-0.963-2.148-2.147
c0-0.985,0.669-1.815,1.575-2.067c-2.174,0.109-4.353,0.113-6.529,0.169c-0.007,0-0.013,0-0.02,0
c-0.092,0-0.188-0.022-0.289-0.036c-0.032-0.402-0.111-0.788-0.238-1.156c-0.004-0.012-0.007-0.024-0.011-0.037
c-0.063-0.177-0.134-0.348-0.217-0.515c-0.076-0.163-0.161-0.318-0.255-0.469c-0.032-0.05-0.062-0.099-0.096-0.147
c-0.646-0.956-1.628-1.642-2.748-1.879c-0.362-0.089-0.734-0.149-1.122-0.149c-0.509,0-0.991,0.102-1.451,0.252
c-0.181-0.073-0.192-0.312-0.115-0.784c0.296-0.029,0.649-0.178,0.649-0.178V6.819c0,0,3.899,0,4.679,0
c0.943,0,1.316,0.888,1.316,0.888c0.72,2.081,1.269,3.432,1.52,4.126c0.097,0.264,0.303,0.39,0.378,0.392
c1.672,0.035,2.844,0.065,2.844,0.065c0-0.873,0-1.706,0-2.527c0.136-0.076,0.267-0.103,0.383-0.103
c0.265,0,0.453,0.138,0.453,0.138s-0.037,1.76-0.037,2.484c0,0.038,0.048,0.059,0.077,0.06c0.961,0.038,1.848,0.075,2.808,0.109
c0.646,0.025,0.813,0.18,0.758,0.839c-0.059,0.705-0.14,1.412-0.271,2.108c-0.269,1.444,0.042,1.395-1.562,1.496
C22.183,17.055,22.973,17.943,22.973,19.013z"/>
<path fill="#0B8C61" d="M19.57,19.013c0,0.693,0.564,1.257,1.256,1.257c0.692,0,1.256-0.564,1.256-1.257
c0-0.692-0.564-1.255-1.256-1.255C20.134,17.758,19.57,18.321,19.57,19.013z M21.832,19.013c0,0.555-0.451,1.007-1.006,1.007
c-0.555,0-1.006-0.452-1.006-1.007c0-0.554,0.451-1.005,1.006-1.005C21.381,18.008,21.832,18.459,21.832,19.013z"/>
<path fill="#0B8C61" d="M12.919,8.341L8.961,8.347l-0.004,0.97l-0.003,2.916c1.209-0.044,2.595-0.069,3.939-0.069
c0.452,0,0.9,0.003,1.334,0.009l-0.045-0.018L12.919,8.341z M12.893,11.663c-1.138,0-2.34,0.018-3.438,0.052l0.003-2.397
L9.46,8.846l3.098-0.005l0.935,2.824C13.294,11.664,13.094,11.663,12.893,11.663z"/>
<path fill="#0B8C61" d="M8.728,15.385c-1.142,0-2.07,0.929-2.07,2.07s0.928,2.069,2.07,2.069c1.141,0,2.069-0.928,2.069-2.069
S9.869,15.385,8.728,15.385z M8.728,19.023c-0.865,0-1.57-0.704-1.57-1.569c0-0.866,0.704-1.57,1.57-1.57
c0.865,0,1.569,0.704,1.569,1.57C10.297,18.32,9.593,19.023,8.728,19.023z"/>
</g>
</g>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns="&amp;ns_sfw;"
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"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="28px"
height="33px"
viewBox="0 0 28 33"
enable-background="new 0 0 28 33"
xml:space="preserve"
sodipodi:docname="green_producer.svg"
inkscape:version="0.92.3 (2405546, 2018-03-11)"><defs
id="defs29" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1803"
inkscape:window-height="857"
id="namedview27"
showgrid="false"
inkscape:zoom="17.609546"
inkscape:cx="3.0055332"
inkscape:cy="16.5"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="g20" />
<metadata
id="metadata2">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
height="96"
width="16383"
y="-85.5"
x="-8112"
bottomLeftOrigin="true" />
</ns:sfw>
<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>
<g
id="g24">
<path
opacity="0.25"
fill="#282828"
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"
id="path4" />
<g
id="g22">
<path
fill="#FFFFFF"
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"
id="path6" />
<g
id="g20">
<path
fill="#C1122B"
d="M9.46,8.846L9.458,9.319l-0.003,2.397c1.098-0.034,2.3-0.052,3.438-0.052c0.201,0,0.401,0.001,0.6,0.002 l-0.935-2.824L9.46,8.846z"
id="path8"
style="fill:#0b8c61;fill-opacity:1" />
<circle
fill="#C1122B"
cx="8.728"
cy="17.454"
r="1.569"
id="circle10"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M12.395,17.13c-0.015-0.107-0.027-0.199-0.037-0.282c-0.047-0.382-0.165-0.741-0.325-1.075 c-0.049-0.096-0.097-0.193-0.155-0.285c-0.038-0.063-0.078-0.124-0.119-0.184c-0.514-0.723-1.278-1.251-2.166-1.464 c-0.202-0.04-0.409-0.061-0.619-0.061c-0.295,0-0.592,0.041-0.881,0.122c-0.276,0.077-0.487,0.112-0.685,0.112 c-0.027,0-0.048-0.008-0.074-0.009C5.969,14.557,5,15.892,5,17.455c0,2.055,1.672,3.727,3.728,3.727 c2.035,0,3.689-1.642,3.719-3.671l-0.041-0.296L12.395,17.13z M8.728,19.523c-1.142,0-2.07-0.928-2.07-2.069 s0.928-2.07,2.07-2.07c1.141,0,2.069,0.929,2.069,2.07S9.869,19.523,8.728,19.523z"
id="path12"
style="fill:#0b8c61;fill-opacity:1" />
<circle
fill="#C1122B"
cx="20.826"
cy="19.013"
r="1.006"
id="circle14"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M22.72,15.398c0.13-0.696,0.212-1.403,0.271-2.108c0.055-0.659-0.112-0.814-0.758-0.839 c-0.961-0.034-1.848-0.071-2.808-0.109c-0.029-0.001-0.077-0.022-0.077-0.06c0-0.724,0.037-2.484,0.037-2.484 S19.196,9.66,18.931,9.66c-0.116,0-0.247,0.026-0.383,0.103c0,0.821,0,1.654,0,2.527c0,0-1.172-0.031-2.844-0.065 c-0.074-0.002-0.281-0.128-0.378-0.392c-0.251-0.694-0.8-2.045-1.52-4.126c0,0-0.373-0.888-1.316-0.888c-0.781,0-4.679,0-4.679,0 v5.199c0,0-0.353,0.148-0.649,0.178c-0.078,0.472-0.067,0.711,0.115,0.784c0.46-0.15,0.942-0.252,1.451-0.252 c0.389,0,0.761,0.061,1.122,0.149c1.119,0.237,2.101,0.923,2.748,1.879c0.034,0.048,0.064,0.097,0.096,0.147 c0.094,0.151,0.179,0.306,0.255,0.47c0.083,0.167,0.154,0.338,0.217,0.515c0.004,0.012,0.008,0.024,0.011,0.037 c0.127,0.368,0.206,0.754,0.238,1.156c0.101,0.014,0.196,0.036,0.289,0.036c0.007,0,0.013,0,0.02,0 c2.176-0.056,4.355-0.06,6.529-0.169c-0.906,0.251-1.575,1.082-1.575,2.067c0,1.184,0.962,2.147,2.148,2.147 c1.184,0,2.147-0.963,2.147-2.147c0-1.071-0.79-1.958-1.816-2.119C22.761,16.794,22.451,16.842,22.72,15.398z M12.893,12.163 c-1.343,0-2.729,0.025-3.938,0.069l0.003-2.916l0.004-0.97l3.957-0.006l1.263,3.813l0.045,0.018 C13.793,12.166,13.345,12.163,12.893,12.163z M22.082,19.013c0,0.693-0.564,1.257-1.256,1.257c-0.692,0-1.256-0.564-1.256-1.257 c0-0.692,0.564-1.255,1.256-1.255C21.518,17.758,22.082,18.321,22.082,19.013z"
id="path16"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
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 M23.973,19.013 c0,1.735-1.412,3.147-3.147,3.147c-1.736,0-3.148-1.412-3.148-3.147c0-0.34,0.055-0.67,0.158-0.98 c-0.652,0.016-1.301,0.027-1.94,0.039c-0.716,0.013-1.431,0.025-2.137,0.043l-0.037,0.001h-0.018 c-0.102,0-0.208-0.014-0.315-0.03c-0.312,2.306-2.272,4.096-4.661,4.096C6.121,22.181,4,20.061,4,17.455 c0-1.725,0.939-3.222,2.323-4.047c-0.278-0.463-0.209-1.002-0.148-1.375L6.3,11.276l0.511-0.051V6.819v-1h1h4.679 c1.269,0,2.003,0.943,2.238,1.5l0.012,0.03l0.011,0.03c0.497,1.435,0.905,2.503,1.203,3.283c0.083,0.217,0.156,0.408,0.217,0.572 c0.531,0.011,0.998,0.022,1.376,0.031V9.763V9.177l0.512-0.286c0.273-0.153,0.566-0.23,0.872-0.23 c0.55,0,0.938,0.254,1.044,0.332l0.419,0.307l-0.011,0.52c0,0.001-0.017,0.815-0.028,1.56c0.635,0.025,1.257,0.05,1.916,0.073 c0.277,0.011,0.925,0.036,1.358,0.525c0.384,0.434,0.393,0.974,0.358,1.396c-0.07,0.848-0.161,1.55-0.284,2.208 c-0.04,0.216-0.066,0.397-0.089,0.547c-0.062,0.425-0.158,0.742-0.292,0.981C23.731,17.644,23.973,18.308,23.973,19.013z"
id="path18"
style="fill:#0b8c61;fill-opacity:1" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -1,67 +1,110 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
]>
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
<metadata>
<sfw xmlns="&ns_sfw;">
<slices></slices>
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
</sfw>
</metadata>
<g>
<path opacity="0.25" fill="#282828" 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"/>
<g>
<path fill="#FFFFFF" 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"/>
<g>
<path fill="#C1122B" d="M9.46,8.846L9.458,9.319l-0.003,2.397c1.098-0.034,2.3-0.052,3.438-0.052c0.201,0,0.401,0.001,0.6,0.002
l-0.935-2.824L9.46,8.846z"/>
<circle fill="#C1122B" cx="8.728" cy="17.454" r="1.569"/>
<path fill="#C1122B" d="M12.395,17.13c-0.015-0.107-0.027-0.199-0.037-0.282c-0.047-0.382-0.165-0.741-0.325-1.075
c-0.049-0.096-0.097-0.193-0.155-0.285c-0.038-0.063-0.078-0.124-0.119-0.184c-0.514-0.723-1.278-1.251-2.166-1.464
c-0.202-0.04-0.409-0.061-0.619-0.061c-0.295,0-0.592,0.041-0.881,0.122c-0.276,0.077-0.487,0.112-0.685,0.112
c-0.027,0-0.048-0.008-0.074-0.009C5.969,14.557,5,15.892,5,17.455c0,2.055,1.672,3.727,3.728,3.727
c2.035,0,3.689-1.642,3.719-3.671l-0.041-0.296L12.395,17.13z M8.728,19.523c-1.142,0-2.07-0.928-2.07-2.069
s0.928-2.07,2.07-2.07c1.141,0,2.069,0.929,2.069,2.07S9.869,19.523,8.728,19.523z"/>
<circle fill="#C1122B" cx="20.826" cy="19.013" r="1.006"/>
<path fill="#C1122B" d="M22.72,15.398c0.13-0.696,0.212-1.403,0.271-2.108c0.055-0.659-0.112-0.814-0.758-0.839
c-0.961-0.034-1.848-0.071-2.808-0.109c-0.029-0.001-0.077-0.022-0.077-0.06c0-0.724,0.037-2.484,0.037-2.484
S19.196,9.66,18.931,9.66c-0.116,0-0.247,0.026-0.383,0.103c0,0.821,0,1.654,0,2.527c0,0-1.172-0.031-2.844-0.065
c-0.074-0.002-0.281-0.128-0.378-0.392c-0.251-0.694-0.8-2.045-1.52-4.126c0,0-0.373-0.888-1.316-0.888c-0.781,0-4.679,0-4.679,0
v5.199c0,0-0.353,0.148-0.649,0.178c-0.078,0.472-0.067,0.711,0.115,0.784c0.46-0.15,0.942-0.252,1.451-0.252
c0.389,0,0.761,0.061,1.122,0.149c1.119,0.237,2.101,0.923,2.748,1.879c0.034,0.048,0.064,0.097,0.096,0.147
c0.094,0.151,0.179,0.306,0.255,0.47c0.083,0.167,0.154,0.338,0.217,0.515c0.004,0.012,0.008,0.024,0.011,0.037
c0.127,0.368,0.206,0.754,0.238,1.156c0.101,0.014,0.196,0.036,0.289,0.036c0.007,0,0.013,0,0.02,0
c2.176-0.056,4.355-0.06,6.529-0.169c-0.906,0.251-1.575,1.082-1.575,2.067c0,1.184,0.962,2.147,2.148,2.147
c1.184,0,2.147-0.963,2.147-2.147c0-1.071-0.79-1.958-1.816-2.119C22.761,16.794,22.451,16.842,22.72,15.398z M12.893,12.163
c-1.343,0-2.729,0.025-3.938,0.069l0.003-2.916l0.004-0.97l3.957-0.006l1.263,3.813l0.045,0.018
C13.793,12.166,13.345,12.163,12.893,12.163z M22.082,19.013c0,0.693-0.564,1.257-1.256,1.257c-0.692,0-1.256-0.564-1.256-1.257
c0-0.692,0.564-1.255,1.256-1.255C21.518,17.758,22.082,18.321,22.082,19.013z"/>
<path fill="#C1122B" 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 M23.973,19.013
c0,1.735-1.412,3.147-3.147,3.147c-1.736,0-3.148-1.412-3.148-3.147c0-0.34,0.055-0.67,0.158-0.98
c-0.652,0.016-1.301,0.027-1.94,0.039c-0.716,0.013-1.431,0.025-2.137,0.043l-0.037,0.001h-0.018
c-0.102,0-0.208-0.014-0.315-0.03c-0.312,2.306-2.272,4.096-4.661,4.096C6.121,22.181,4,20.061,4,17.455
c0-1.725,0.939-3.222,2.323-4.047c-0.278-0.463-0.209-1.002-0.148-1.375L6.3,11.276l0.511-0.051V6.819v-1h1h4.679
c1.269,0,2.003,0.943,2.238,1.5l0.012,0.03l0.011,0.03c0.497,1.435,0.905,2.503,1.203,3.283c0.083,0.217,0.156,0.408,0.217,0.572
c0.531,0.011,0.998,0.022,1.376,0.031V9.763V9.177l0.512-0.286c0.273-0.153,0.566-0.23,0.872-0.23
c0.55,0,0.938,0.254,1.044,0.332l0.419,0.307l-0.011,0.52c0,0.001-0.017,0.815-0.028,1.56c0.635,0.025,1.257,0.05,1.916,0.073
c0.277,0.011,0.925,0.036,1.358,0.525c0.384,0.434,0.393,0.974,0.358,1.396c-0.07,0.848-0.161,1.55-0.284,2.208
c-0.04,0.216-0.066,0.397-0.089,0.547c-0.062,0.425-0.158,0.742-0.292,0.981C23.731,17.644,23.973,18.308,23.973,19.013z"/>
</g>
</g>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns="&amp;ns_sfw;"
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"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="28px"
height="33px"
viewBox="0 0 28 33"
enable-background="new 0 0 28 33"
xml:space="preserve"
sodipodi:docname="green_producer.svg"
inkscape:version="0.92.3 (2405546, 2018-03-11)"><defs
id="defs29" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1803"
inkscape:window-height="857"
id="namedview27"
showgrid="false"
inkscape:zoom="17.609546"
inkscape:cx="3.0055332"
inkscape:cy="16.5"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="g20" />
<metadata
id="metadata2">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
height="96"
width="16383"
y="-85.5"
x="-8112"
bottomLeftOrigin="true" />
</ns:sfw>
<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>
<g
id="g24">
<path
opacity="0.25"
fill="#282828"
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"
id="path4" />
<g
id="g22">
<path
fill="#FFFFFF"
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"
id="path6" />
<g
id="g20">
<path
fill="#C1122B"
d="M9.46,8.846L9.458,9.319l-0.003,2.397c1.098-0.034,2.3-0.052,3.438-0.052c0.201,0,0.401,0.001,0.6,0.002 l-0.935-2.824L9.46,8.846z"
id="path8"
style="fill:#0b8c61;fill-opacity:1" />
<circle
fill="#C1122B"
cx="8.728"
cy="17.454"
r="1.569"
id="circle10"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M12.395,17.13c-0.015-0.107-0.027-0.199-0.037-0.282c-0.047-0.382-0.165-0.741-0.325-1.075 c-0.049-0.096-0.097-0.193-0.155-0.285c-0.038-0.063-0.078-0.124-0.119-0.184c-0.514-0.723-1.278-1.251-2.166-1.464 c-0.202-0.04-0.409-0.061-0.619-0.061c-0.295,0-0.592,0.041-0.881,0.122c-0.276,0.077-0.487,0.112-0.685,0.112 c-0.027,0-0.048-0.008-0.074-0.009C5.969,14.557,5,15.892,5,17.455c0,2.055,1.672,3.727,3.728,3.727 c2.035,0,3.689-1.642,3.719-3.671l-0.041-0.296L12.395,17.13z M8.728,19.523c-1.142,0-2.07-0.928-2.07-2.069 s0.928-2.07,2.07-2.07c1.141,0,2.069,0.929,2.069,2.07S9.869,19.523,8.728,19.523z"
id="path12"
style="fill:#0b8c61;fill-opacity:1" />
<circle
fill="#C1122B"
cx="20.826"
cy="19.013"
r="1.006"
id="circle14"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M22.72,15.398c0.13-0.696,0.212-1.403,0.271-2.108c0.055-0.659-0.112-0.814-0.758-0.839 c-0.961-0.034-1.848-0.071-2.808-0.109c-0.029-0.001-0.077-0.022-0.077-0.06c0-0.724,0.037-2.484,0.037-2.484 S19.196,9.66,18.931,9.66c-0.116,0-0.247,0.026-0.383,0.103c0,0.821,0,1.654,0,2.527c0,0-1.172-0.031-2.844-0.065 c-0.074-0.002-0.281-0.128-0.378-0.392c-0.251-0.694-0.8-2.045-1.52-4.126c0,0-0.373-0.888-1.316-0.888c-0.781,0-4.679,0-4.679,0 v5.199c0,0-0.353,0.148-0.649,0.178c-0.078,0.472-0.067,0.711,0.115,0.784c0.46-0.15,0.942-0.252,1.451-0.252 c0.389,0,0.761,0.061,1.122,0.149c1.119,0.237,2.101,0.923,2.748,1.879c0.034,0.048,0.064,0.097,0.096,0.147 c0.094,0.151,0.179,0.306,0.255,0.47c0.083,0.167,0.154,0.338,0.217,0.515c0.004,0.012,0.008,0.024,0.011,0.037 c0.127,0.368,0.206,0.754,0.238,1.156c0.101,0.014,0.196,0.036,0.289,0.036c0.007,0,0.013,0,0.02,0 c2.176-0.056,4.355-0.06,6.529-0.169c-0.906,0.251-1.575,1.082-1.575,2.067c0,1.184,0.962,2.147,2.148,2.147 c1.184,0,2.147-0.963,2.147-2.147c0-1.071-0.79-1.958-1.816-2.119C22.761,16.794,22.451,16.842,22.72,15.398z M12.893,12.163 c-1.343,0-2.729,0.025-3.938,0.069l0.003-2.916l0.004-0.97l3.957-0.006l1.263,3.813l0.045,0.018 C13.793,12.166,13.345,12.163,12.893,12.163z M22.082,19.013c0,0.693-0.564,1.257-1.256,1.257c-0.692,0-1.256-0.564-1.256-1.257 c0-0.692,0.564-1.255,1.256-1.255C21.518,17.758,22.082,18.321,22.082,19.013z"
id="path16"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
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 M23.973,19.013 c0,1.735-1.412,3.147-3.147,3.147c-1.736,0-3.148-1.412-3.148-3.147c0-0.34,0.055-0.67,0.158-0.98 c-0.652,0.016-1.301,0.027-1.94,0.039c-0.716,0.013-1.431,0.025-2.137,0.043l-0.037,0.001h-0.018 c-0.102,0-0.208-0.014-0.315-0.03c-0.312,2.306-2.272,4.096-4.661,4.096C6.121,22.181,4,20.061,4,17.455 c0-1.725,0.939-3.222,2.323-4.047c-0.278-0.463-0.209-1.002-0.148-1.375L6.3,11.276l0.511-0.051V6.819v-1h1h4.679 c1.269,0,2.003,0.943,2.238,1.5l0.012,0.03l0.011,0.03c0.497,1.435,0.905,2.503,1.203,3.283c0.083,0.217,0.156,0.408,0.217,0.572 c0.531,0.011,0.998,0.022,1.376,0.031V9.763V9.177l0.512-0.286c0.273-0.153,0.566-0.23,0.872-0.23 c0.55,0,0.938,0.254,1.044,0.332l0.419,0.307l-0.011,0.52c0,0.001-0.017,0.815-0.028,1.56c0.635,0.025,1.257,0.05,1.916,0.073 c0.277,0.011,0.925,0.036,1.358,0.525c0.384,0.434,0.393,0.974,0.358,1.396c-0.07,0.848-0.161,1.55-0.284,2.208 c-0.04,0.216-0.066,0.397-0.089,0.547c-0.062,0.425-0.158,0.742-0.292,0.981C23.731,17.644,23.973,18.308,23.973,19.013z"
id="path18"
style="fill:#0b8c61;fill-opacity:1" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -1,69 +1,110 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
]>
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
<metadata>
<sfw xmlns="&ns_sfw;">
<slices></slices>
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
</sfw>
</metadata>
<g>
<path opacity="0.25" fill="#282828" 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"/>
<g>
<path fill="#FFFFFF" 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"/>
<g>
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.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.333C28,6.717,21.72,0,14,0z M14.002,30.908
C10.865,28.805,1,21.533,1,13.333C1,7.511,6.56,1,14,1c7.44,0,13,6.511,13,12.333C27,21.682,17.14,28.843,14.002,30.908z"/>
<path fill="#C1122B" d="M23.703,15.582c0.123-0.658,0.214-1.36,0.284-2.208c0.035-0.422,0.026-0.962-0.358-1.396
c-0.433-0.489-1.081-0.514-1.358-0.525c-0.659-0.024-1.281-0.048-1.916-0.073c0.011-0.745,0.028-1.56,0.028-1.56l0.011-0.52
l-0.419-0.307c-0.106-0.078-0.495-0.332-1.044-0.332c-0.306,0-0.599,0.077-0.872,0.23l-0.512,0.286v0.586v1.502
c-0.378-0.009-0.845-0.02-1.376-0.031c-0.062-0.164-0.135-0.355-0.217-0.572c-0.298-0.78-0.706-1.847-1.203-3.283l-0.011-0.03
l-0.013-0.03c-0.234-0.557-0.969-1.5-2.238-1.5H7.811h-1v1v4.407L6.3,11.276l-0.125,0.757c-0.061,0.373-0.13,0.911,0.148,1.375
C4.939,14.233,4,15.729,4,17.455c0,2.606,2.121,4.727,4.728,4.727c2.39,0,4.349-1.79,4.661-4.096
c0.107,0.016,0.212,0.03,0.315,0.03h0.018l0.037-0.001c0.706-0.018,1.421-0.031,2.137-0.043c0.639-0.011,1.288-0.023,1.94-0.039
c-0.103,0.311-0.158,0.641-0.158,0.98c0,1.735,1.412,3.147,3.148,3.147c1.736,0,3.147-1.412,3.147-3.147
c0-0.706-0.242-1.369-0.651-1.903c0.135-0.239,0.23-0.556,0.292-0.981C23.636,15.978,23.662,15.798,23.703,15.582z M8.728,21.181
C6.672,21.181,5,19.51,5,17.455c0-1.562,0.969-2.898,2.335-3.451c0.026,0.001,0.046,0.009,0.074,0.009
c0.197,0,0.409-0.034,0.685-0.112c0.289-0.081,0.586-0.122,0.881-0.122c0.21,0,0.417,0.021,0.619,0.061
c0.888,0.213,1.652,0.741,2.166,1.464c0.041,0.06,0.082,0.121,0.119,0.184c0.057,0.091,0.105,0.188,0.155,0.285
c0.16,0.334,0.279,0.693,0.325,1.075c0.009,0.083,0.022,0.176,0.037,0.283l0.011,0.082l0.041,0.296
C12.417,19.539,10.763,21.181,8.728,21.181z M22.973,19.013c0,1.184-0.964,2.147-2.147,2.147c-1.186,0-2.148-0.963-2.148-2.147
c0-0.985,0.669-1.815,1.575-2.067c-2.174,0.109-4.353,0.113-6.529,0.169c-0.007,0-0.013,0-0.02,0
c-0.092,0-0.188-0.022-0.289-0.036c-0.032-0.402-0.111-0.788-0.238-1.156c-0.004-0.012-0.007-0.024-0.011-0.037
c-0.063-0.177-0.134-0.348-0.217-0.515c-0.076-0.163-0.161-0.318-0.255-0.469c-0.032-0.05-0.062-0.099-0.096-0.147
c-0.646-0.956-1.628-1.642-2.748-1.879c-0.362-0.089-0.734-0.149-1.122-0.149c-0.509,0-0.991,0.102-1.451,0.252
c-0.181-0.073-0.192-0.312-0.115-0.784c0.296-0.029,0.649-0.178,0.649-0.178V6.819c0,0,3.899,0,4.679,0
c0.943,0,1.316,0.888,1.316,0.888c0.72,2.081,1.269,3.432,1.52,4.126c0.097,0.264,0.303,0.39,0.378,0.392
c1.672,0.035,2.844,0.065,2.844,0.065c0-0.873,0-1.706,0-2.527c0.136-0.076,0.267-0.103,0.383-0.103
c0.265,0,0.453,0.138,0.453,0.138s-0.037,1.76-0.037,2.484c0,0.038,0.048,0.059,0.077,0.06c0.961,0.038,1.848,0.075,2.808,0.109
c0.646,0.025,0.813,0.18,0.758,0.839c-0.059,0.705-0.14,1.412-0.271,2.108c-0.269,1.444,0.042,1.395-1.562,1.496
C22.183,17.055,22.973,17.943,22.973,19.013z"/>
<path fill="#C1122B" d="M19.57,19.013c0,0.693,0.564,1.257,1.256,1.257c0.692,0,1.256-0.564,1.256-1.257
c0-0.692-0.564-1.255-1.256-1.255C20.134,17.758,19.57,18.321,19.57,19.013z M21.832,19.013c0,0.555-0.451,1.007-1.006,1.007
c-0.555,0-1.006-0.452-1.006-1.007c0-0.554,0.451-1.005,1.006-1.005C21.381,18.008,21.832,18.459,21.832,19.013z"/>
<path fill="#C1122B" d="M12.919,8.341L8.961,8.347l-0.004,0.97l-0.003,2.916c1.209-0.044,2.595-0.069,3.939-0.069
c0.452,0,0.9,0.003,1.334,0.009l-0.045-0.018L12.919,8.341z M12.893,11.663c-1.138,0-2.34,0.018-3.438,0.052l0.003-2.397
L9.46,8.846l3.098-0.005l0.935,2.824C13.294,11.664,13.094,11.663,12.893,11.663z"/>
<path fill="#C1122B" d="M8.728,15.385c-1.142,0-2.07,0.929-2.07,2.07s0.928,2.069,2.07,2.069c1.141,0,2.069-0.928,2.069-2.069
S9.869,15.385,8.728,15.385z M8.728,19.023c-0.865,0-1.57-0.704-1.57-1.569c0-0.866,0.704-1.57,1.57-1.57
c0.865,0,1.569,0.704,1.569,1.57C10.297,18.32,9.593,19.023,8.728,19.023z"/>
</g>
</g>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns="&amp;ns_sfw;"
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"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="28px"
height="33px"
viewBox="0 0 28 33"
enable-background="new 0 0 28 33"
xml:space="preserve"
sodipodi:docname="green_producer.svg"
inkscape:version="0.92.3 (2405546, 2018-03-11)"><defs
id="defs29" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1803"
inkscape:window-height="857"
id="namedview27"
showgrid="false"
inkscape:zoom="17.609546"
inkscape:cx="3.0055332"
inkscape:cy="16.5"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="g20" />
<metadata
id="metadata2">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
height="96"
width="16383"
y="-85.5"
x="-8112"
bottomLeftOrigin="true" />
</ns:sfw>
<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>
<g
id="g24">
<path
opacity="0.25"
fill="#282828"
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"
id="path4" />
<g
id="g22">
<path
fill="#FFFFFF"
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"
id="path6" />
<g
id="g20">
<path
fill="#C1122B"
d="M9.46,8.846L9.458,9.319l-0.003,2.397c1.098-0.034,2.3-0.052,3.438-0.052c0.201,0,0.401,0.001,0.6,0.002 l-0.935-2.824L9.46,8.846z"
id="path8"
style="fill:#0b8c61;fill-opacity:1" />
<circle
fill="#C1122B"
cx="8.728"
cy="17.454"
r="1.569"
id="circle10"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M12.395,17.13c-0.015-0.107-0.027-0.199-0.037-0.282c-0.047-0.382-0.165-0.741-0.325-1.075 c-0.049-0.096-0.097-0.193-0.155-0.285c-0.038-0.063-0.078-0.124-0.119-0.184c-0.514-0.723-1.278-1.251-2.166-1.464 c-0.202-0.04-0.409-0.061-0.619-0.061c-0.295,0-0.592,0.041-0.881,0.122c-0.276,0.077-0.487,0.112-0.685,0.112 c-0.027,0-0.048-0.008-0.074-0.009C5.969,14.557,5,15.892,5,17.455c0,2.055,1.672,3.727,3.728,3.727 c2.035,0,3.689-1.642,3.719-3.671l-0.041-0.296L12.395,17.13z M8.728,19.523c-1.142,0-2.07-0.928-2.07-2.069 s0.928-2.07,2.07-2.07c1.141,0,2.069,0.929,2.069,2.07S9.869,19.523,8.728,19.523z"
id="path12"
style="fill:#0b8c61;fill-opacity:1" />
<circle
fill="#C1122B"
cx="20.826"
cy="19.013"
r="1.006"
id="circle14"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M22.72,15.398c0.13-0.696,0.212-1.403,0.271-2.108c0.055-0.659-0.112-0.814-0.758-0.839 c-0.961-0.034-1.848-0.071-2.808-0.109c-0.029-0.001-0.077-0.022-0.077-0.06c0-0.724,0.037-2.484,0.037-2.484 S19.196,9.66,18.931,9.66c-0.116,0-0.247,0.026-0.383,0.103c0,0.821,0,1.654,0,2.527c0,0-1.172-0.031-2.844-0.065 c-0.074-0.002-0.281-0.128-0.378-0.392c-0.251-0.694-0.8-2.045-1.52-4.126c0,0-0.373-0.888-1.316-0.888c-0.781,0-4.679,0-4.679,0 v5.199c0,0-0.353,0.148-0.649,0.178c-0.078,0.472-0.067,0.711,0.115,0.784c0.46-0.15,0.942-0.252,1.451-0.252 c0.389,0,0.761,0.061,1.122,0.149c1.119,0.237,2.101,0.923,2.748,1.879c0.034,0.048,0.064,0.097,0.096,0.147 c0.094,0.151,0.179,0.306,0.255,0.47c0.083,0.167,0.154,0.338,0.217,0.515c0.004,0.012,0.008,0.024,0.011,0.037 c0.127,0.368,0.206,0.754,0.238,1.156c0.101,0.014,0.196,0.036,0.289,0.036c0.007,0,0.013,0,0.02,0 c2.176-0.056,4.355-0.06,6.529-0.169c-0.906,0.251-1.575,1.082-1.575,2.067c0,1.184,0.962,2.147,2.148,2.147 c1.184,0,2.147-0.963,2.147-2.147c0-1.071-0.79-1.958-1.816-2.119C22.761,16.794,22.451,16.842,22.72,15.398z M12.893,12.163 c-1.343,0-2.729,0.025-3.938,0.069l0.003-2.916l0.004-0.97l3.957-0.006l1.263,3.813l0.045,0.018 C13.793,12.166,13.345,12.163,12.893,12.163z M22.082,19.013c0,0.693-0.564,1.257-1.256,1.257c-0.692,0-1.256-0.564-1.256-1.257 c0-0.692,0.564-1.255,1.256-1.255C21.518,17.758,22.082,18.321,22.082,19.013z"
id="path16"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
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 M23.973,19.013 c0,1.735-1.412,3.147-3.147,3.147c-1.736,0-3.148-1.412-3.148-3.147c0-0.34,0.055-0.67,0.158-0.98 c-0.652,0.016-1.301,0.027-1.94,0.039c-0.716,0.013-1.431,0.025-2.137,0.043l-0.037,0.001h-0.018 c-0.102,0-0.208-0.014-0.315-0.03c-0.312,2.306-2.272,4.096-4.661,4.096C6.121,22.181,4,20.061,4,17.455 c0-1.725,0.939-3.222,2.323-4.047c-0.278-0.463-0.209-1.002-0.148-1.375L6.3,11.276l0.511-0.051V6.819v-1h1h4.679 c1.269,0,2.003,0.943,2.238,1.5l0.012,0.03l0.011,0.03c0.497,1.435,0.905,2.503,1.203,3.283c0.083,0.217,0.156,0.408,0.217,0.572 c0.531,0.011,0.998,0.022,1.376,0.031V9.763V9.177l0.512-0.286c0.273-0.153,0.566-0.23,0.872-0.23 c0.55,0,0.938,0.254,1.044,0.332l0.419,0.307l-0.011,0.52c0,0.001-0.017,0.815-0.028,1.56c0.635,0.025,1.257,0.05,1.916,0.073 c0.277,0.011,0.925,0.036,1.358,0.525c0.384,0.434,0.393,0.974,0.358,1.396c-0.07,0.848-0.161,1.55-0.284,2.208 c-0.04,0.216-0.066,0.397-0.089,0.547c-0.062,0.425-0.158,0.742-0.292,0.981C23.731,17.644,23.973,18.308,23.973,19.013z"
id="path18"
style="fill:#0b8c61;fill-opacity:1" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -1,51 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
]>
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
<metadata>
<sfw xmlns="&ns_sfw;">
<slices></slices>
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
</sfw>
</metadata>
<g>
<path opacity="0.25" fill="#282828" 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"/>
<g>
<path fill="#FFFFFF" 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"/>
<g>
<path fill="#C1122B" d="M13.999,8.546c-1.24,0-2.249,1.009-2.249,2.248c0,1.242,1.009,2.253,2.249,2.253
c1.241,0,2.251-1.01,2.251-2.253C16.25,9.555,15.24,8.546,13.999,8.546z"/>
<path fill="#C1122B" d="M14,6.348c-2.453,0-4.448,1.995-4.448,4.448c0,0.859,0.468,3.112,3.602,8.541l0.387,0.671l0.134,0.225
l0.09,0.15l0.043,0.072l0.085,0.144l0.108,0.178l0.104-0.172l0.036-0.061l0.088-0.149l0.032-0.054l0.19-0.319l0.395-0.685
c3.134-5.44,3.602-7.687,3.602-8.542C18.448,8.343,16.452,6.348,14,6.348z M13.999,13.797c-1.654,0-2.999-1.347-2.999-3.003
c0-1.655,1.346-2.998,2.999-2.998c1.655,0,3.001,1.345,3.001,2.998C17,12.451,15.654,13.797,13.999,13.797z"/>
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.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.333C28,6.717,21.72,0,14,0z M19.336,22.021
c-0.002,1.728-2.686,2.632-5.337,2.632c-2.652,0-5.337-0.905-5.337-2.634c0-1.158,1.352-2.099,3.465-2.462
c-1.721-3.01-3.577-6.721-3.577-8.76c0-3.004,2.444-5.448,5.448-5.448s5.448,2.444,5.449,5.447c0,2.036-1.858,5.75-3.578,8.762
C17.984,19.92,19.336,20.86,19.336,22.021z"/>
<path fill="#C1122B" d="M15.175,20.763c-0.029,0.048-0.059,0.1-0.088,0.148c-0.04,0.068-0.084,0.142-0.121,0.204
c-0.111,0.184-0.206,0.339-0.293,0.483c-0.021,0.03-0.042,0.066-0.061,0.096c-0.081,0.133-0.142,0.231-0.194,0.313
c-0.015,0.025-0.032,0.054-0.045,0.073c-0.052,0.082-0.08,0.125-0.08,0.125l-0.295,0.463l-0.293-0.463
c0,0-0.031-0.048-0.085-0.134c-0.006-0.009-0.013-0.023-0.019-0.029c-0.053-0.086-0.123-0.198-0.212-0.345
c-0.025-0.038-0.052-0.086-0.079-0.127c-0.083-0.136-0.17-0.278-0.274-0.448c-0.042-0.072-0.089-0.15-0.134-0.225
c-0.026-0.044-0.053-0.09-0.078-0.132l-0.381,0.061c-1.729,0.277-2.477,0.925-2.477,1.195c0,0.172,0.269,0.481,0.859,0.754
c0.8,0.37,1.926,0.574,3.172,0.574c2.608,0,4.031-0.878,4.031-1.329c0-0.269-0.748-0.917-2.476-1.195L15.175,20.763z"/>
</g>
</g>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns="&amp;ns_sfw;"
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"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="28px"
height="33px"
viewBox="0 0 28 33"
enable-background="new 0 0 28 33"
xml:space="preserve"
sodipodi:docname="green_hub.svg"
inkscape:version="0.92.3 (2405546, 2018-03-11)"><defs
id="defs25" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1041"
inkscape:window-height="590"
id="namedview23"
showgrid="false"
inkscape:zoom="7.1515152"
inkscape:cx="-9.0021186"
inkscape:cy="16.5"
inkscape:window-x="752"
inkscape:window-y="122"
inkscape:window-maximized="0"
inkscape:current-layer="g16" />
<metadata
id="metadata2">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
height="96"
width="16383"
y="-85.5"
x="-8112"
bottomLeftOrigin="true" />
</ns:sfw>
<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>
<g
id="g20">
<path
opacity="0.25"
fill="#282828"
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"
id="path4" />
<g
id="g18">
<path
fill="#FFFFFF"
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"
id="path6" />
<g
id="g16">
<path
fill="#C1122B"
d="M13.999,8.546c-1.24,0-2.249,1.009-2.249,2.248c0,1.242,1.009,2.253,2.249,2.253 c1.241,0,2.251-1.01,2.251-2.253C16.25,9.555,15.24,8.546,13.999,8.546z"
id="path8"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M14,6.348c-2.453,0-4.448,1.995-4.448,4.448c0,0.859,0.468,3.112,3.602,8.541l0.387,0.671l0.134,0.225 l0.09,0.15l0.043,0.072l0.085,0.144l0.108,0.178l0.104-0.172l0.036-0.061l0.088-0.149l0.032-0.054l0.19-0.319l0.395-0.685 c3.134-5.44,3.602-7.687,3.602-8.542C18.448,8.343,16.452,6.348,14,6.348z M13.999,13.797c-1.654,0-2.999-1.347-2.999-3.003 c0-1.655,1.346-2.998,2.999-2.998c1.655,0,3.001,1.345,3.001,2.998C17,12.451,15.654,13.797,13.999,13.797z"
id="path10"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.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.333C28,6.717,21.72,0,14,0z M19.336,22.021 c-0.002,1.728-2.686,2.632-5.337,2.632c-2.652,0-5.337-0.905-5.337-2.634c0-1.158,1.352-2.099,3.465-2.462 c-1.721-3.01-3.577-6.721-3.577-8.76c0-3.004,2.444-5.448,5.448-5.448s5.448,2.444,5.449,5.447c0,2.036-1.858,5.75-3.578,8.762 C17.984,19.92,19.336,20.86,19.336,22.021z"
id="path12"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M15.175,20.763c-0.029,0.048-0.059,0.1-0.088,0.148c-0.04,0.068-0.084,0.142-0.121,0.204 c-0.111,0.184-0.206,0.339-0.293,0.483c-0.021,0.03-0.042,0.066-0.061,0.096c-0.081,0.133-0.142,0.231-0.194,0.313 c-0.015,0.025-0.032,0.054-0.045,0.073c-0.052,0.082-0.08,0.125-0.08,0.125l-0.295,0.463l-0.293-0.463 c0,0-0.031-0.048-0.085-0.134c-0.006-0.009-0.013-0.023-0.019-0.029c-0.053-0.086-0.123-0.198-0.212-0.345 c-0.025-0.038-0.052-0.086-0.079-0.127c-0.083-0.136-0.17-0.278-0.274-0.448c-0.042-0.072-0.089-0.15-0.134-0.225 c-0.026-0.044-0.053-0.09-0.078-0.132l-0.381,0.061c-1.729,0.277-2.477,0.925-2.477,1.195c0,0.172,0.269,0.481,0.859,0.754 c0.8,0.37,1.926,0.574,3.172,0.574c2.608,0,4.031-0.878,4.031-1.329c0-0.269-0.748-0.917-2.476-1.195L15.175,20.763z"
id="path14"
style="fill:#0b8c61;fill-opacity:1" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -1,51 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
]>
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
<metadata>
<sfw xmlns="&ns_sfw;">
<slices></slices>
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
</sfw>
</metadata>
<g>
<path opacity="0.25" fill="#282828" 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"/>
<g>
<path fill="#FFFFFF" 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"/>
<g>
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.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.333C28,6.717,21.72,0,14,0z M14.002,30.908
C10.865,28.805,1,21.533,1,13.333C1,7.511,6.56,1,14,1s13,6.511,13,12.333C27,21.682,17.14,28.843,14.002,30.908z"/>
<path fill="#C1122B" d="M14,7.796c-1.654,0-3,1.344-3,2.998c0,1.656,1.346,3.003,3,3.003c1.655,0,3-1.347,3-3.003
C17,9.141,15.654,7.796,14,7.796z M14,13.047c-1.24,0-2.25-1.01-2.25-2.253c0-1.24,1.009-2.248,2.25-2.248
c1.241,0,2.25,1.009,2.25,2.248C16.25,12.037,15.24,13.047,14,13.047z"/>
<path fill="#C1122B" d="M14,5.348c-3.004,0-5.448,2.444-5.448,5.448c0,2.039,1.856,5.75,3.577,8.76
c-2.113,0.363-3.465,1.304-3.465,2.462c0,1.729,2.685,2.634,5.337,2.634c2.65,0,5.335-0.904,5.337-2.632
c0-1.16-1.352-2.1-3.465-2.464c1.719-3.012,3.578-6.725,3.578-8.762C19.448,7.792,17.003,5.348,14,5.348z M18.031,22.018
c0,0.451-1.423,1.329-4.031,1.329c-1.246,0-2.372-0.204-3.172-0.574c-0.591-0.273-0.859-0.582-0.859-0.754
c0-0.269,0.748-0.917,2.477-1.195l0.381-0.061c0.025,0.042,0.053,0.088,0.078,0.132c0.045,0.075,0.092,0.153,0.134,0.225
c0.104,0.17,0.191,0.313,0.274,0.448c0.027,0.042,0.054,0.089,0.079,0.127c0.089,0.147,0.159,0.258,0.212,0.345
c0.006,0.007,0.013,0.021,0.019,0.029c0.053,0.086,0.085,0.134,0.085,0.134l0.293,0.463l0.295-0.463c0,0,0.028-0.044,0.08-0.125
c0.012-0.019,0.029-0.048,0.045-0.073c0.052-0.082,0.113-0.18,0.194-0.313c0.019-0.029,0.04-0.066,0.061-0.096
c0.086-0.143,0.181-0.298,0.293-0.483c0.037-0.063,0.081-0.136,0.121-0.204c0.029-0.048,0.06-0.1,0.088-0.148l0.38,0.061
C17.283,21.101,18.031,21.749,18.031,22.018z M14.847,19.337l-0.396,0.688l-0.189,0.316l-0.032,0.054l-0.089,0.151l-0.036,0.06
l-0.104,0.172L13.892,20.6l-0.085-0.144l-0.043-0.072l-0.09-0.15l-0.135-0.227l-0.387-0.67c-3.134-5.43-3.602-7.682-3.602-8.541
c0-2.453,1.995-4.448,4.448-4.448c2.453,0,4.448,1.995,4.449,4.447C18.449,11.65,17.981,13.897,14.847,19.337z"/>
</g>
</g>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns="&amp;ns_sfw;"
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"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="28px"
height="33px"
viewBox="0 0 28 33"
enable-background="new 0 0 28 33"
xml:space="preserve"
sodipodi:docname="green_hub.svg"
inkscape:version="0.92.3 (2405546, 2018-03-11)"><defs
id="defs25" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1041"
inkscape:window-height="590"
id="namedview23"
showgrid="false"
inkscape:zoom="7.1515152"
inkscape:cx="-9.0021186"
inkscape:cy="16.5"
inkscape:window-x="752"
inkscape:window-y="122"
inkscape:window-maximized="0"
inkscape:current-layer="g16" />
<metadata
id="metadata2">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
height="96"
width="16383"
y="-85.5"
x="-8112"
bottomLeftOrigin="true" />
</ns:sfw>
<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>
<g
id="g20">
<path
opacity="0.25"
fill="#282828"
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"
id="path4" />
<g
id="g18">
<path
fill="#FFFFFF"
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"
id="path6" />
<g
id="g16">
<path
fill="#C1122B"
d="M13.999,8.546c-1.24,0-2.249,1.009-2.249,2.248c0,1.242,1.009,2.253,2.249,2.253 c1.241,0,2.251-1.01,2.251-2.253C16.25,9.555,15.24,8.546,13.999,8.546z"
id="path8"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M14,6.348c-2.453,0-4.448,1.995-4.448,4.448c0,0.859,0.468,3.112,3.602,8.541l0.387,0.671l0.134,0.225 l0.09,0.15l0.043,0.072l0.085,0.144l0.108,0.178l0.104-0.172l0.036-0.061l0.088-0.149l0.032-0.054l0.19-0.319l0.395-0.685 c3.134-5.44,3.602-7.687,3.602-8.542C18.448,8.343,16.452,6.348,14,6.348z M13.999,13.797c-1.654,0-2.999-1.347-2.999-3.003 c0-1.655,1.346-2.998,2.999-2.998c1.655,0,3.001,1.345,3.001,2.998C17,12.451,15.654,13.797,13.999,13.797z"
id="path10"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.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.333C28,6.717,21.72,0,14,0z M19.336,22.021 c-0.002,1.728-2.686,2.632-5.337,2.632c-2.652,0-5.337-0.905-5.337-2.634c0-1.158,1.352-2.099,3.465-2.462 c-1.721-3.01-3.577-6.721-3.577-8.76c0-3.004,2.444-5.448,5.448-5.448s5.448,2.444,5.449,5.447c0,2.036-1.858,5.75-3.578,8.762 C17.984,19.92,19.336,20.86,19.336,22.021z"
id="path12"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M15.175,20.763c-0.029,0.048-0.059,0.1-0.088,0.148c-0.04,0.068-0.084,0.142-0.121,0.204 c-0.111,0.184-0.206,0.339-0.293,0.483c-0.021,0.03-0.042,0.066-0.061,0.096c-0.081,0.133-0.142,0.231-0.194,0.313 c-0.015,0.025-0.032,0.054-0.045,0.073c-0.052,0.082-0.08,0.125-0.08,0.125l-0.295,0.463l-0.293-0.463 c0,0-0.031-0.048-0.085-0.134c-0.006-0.009-0.013-0.023-0.019-0.029c-0.053-0.086-0.123-0.198-0.212-0.345 c-0.025-0.038-0.052-0.086-0.079-0.127c-0.083-0.136-0.17-0.278-0.274-0.448c-0.042-0.072-0.089-0.15-0.134-0.225 c-0.026-0.044-0.053-0.09-0.078-0.132l-0.381,0.061c-1.729,0.277-2.477,0.925-2.477,1.195c0,0.172,0.269,0.481,0.859,0.754 c0.8,0.37,1.926,0.574,3.172,0.574c2.608,0,4.031-0.878,4.031-1.329c0-0.269-0.748-0.917-2.476-1.195L15.175,20.763z"
id="path14"
style="fill:#0b8c61;fill-opacity:1" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -1,52 +1,91 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
]>
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
<metadata>
<sfw xmlns="&ns_sfw;">
<slices></slices>
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
</sfw>
</metadata>
<g>
<path opacity="0.25" fill="#282828" 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"/>
<g>
<path fill="#FFFFFF" 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"/>
<g>
<path fill="#C1122B" d="M21.552,10.282h-3.274l-1.683-2.709c-0.165-0.287-0.533-0.384-0.8-0.228
c-0.135,0.078-0.229,0.201-0.27,0.35c-0.041,0.153-0.019,0.315,0.062,0.457l1.359,2.129h-6.311l1.379-2.161
c0.066-0.114,0.087-0.271,0.046-0.421c-0.04-0.15-0.136-0.275-0.271-0.353c-0.266-0.156-0.64-0.053-0.787,0.202l-1.697,2.733
H6.448c-0.522,0-0.948,0.426-0.948,0.948v0.827c0,0.492,0.363,0.97,0.793,1.041l0.105,0.018h15.156l0.119-0.016
c0.44-0.058,0.827-0.545,0.827-1.043V11.23C22.5,10.708,22.074,10.282,21.552,10.282z"/>
<path fill="#C1122B" d="M8.057,20.02c0.007,0.222,0.122,0.337,0.263,0.337h11.365c0.142,0,0.257-0.115,0.257-0.256l0.007-0.1
l0.971-5.886H7.082L8.057,20.02z M17.116,16.074c0-0.298,0.22-0.539,0.518-0.539c0.297,0,0.516,0.241,0.516,0.539v2.017
c0,0.298-0.219,0.539-0.516,0.539c-0.298,0-0.518-0.241-0.518-0.539V16.074z M14.694,16.074c0-0.298,0.219-0.539,0.517-0.539
s0.517,0.241,0.517,0.539v2.017c0,0.298-0.219,0.539-0.517,0.539s-0.517-0.241-0.517-0.539V16.074z M12.272,16.074
c0-0.298,0.219-0.539,0.517-0.539c0.297,0,0.517,0.241,0.517,0.539v2.017c0,0.298-0.22,0.539-0.517,0.539
c-0.298,0-0.517-0.241-0.517-0.539V16.074z M9.85,16.074c0-0.298,0.219-0.539,0.517-0.539c0.297,0,0.516,0.241,0.516,0.539v2.017
c0,0.298-0.219,0.539-0.516,0.539c-0.298,0-0.517-0.241-0.517-0.539V16.074z"/>
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.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.333C28,6.717,21.72,0,14,0z M23.5,12.057
c0,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.831H8.744c-1.052,0-1.925-0.855-1.947-1.906
l-1.024-5.828C5.036,13.691,4.5,12.91,4.5,12.057V11.23c0-1.074,0.874-1.948,1.948-1.948H8.75l1.396-2.247
c0.4-0.698,1.417-0.978,2.145-0.555c0.755,0.435,1.015,1.403,0.58,2.159l-0.41,0.642h2.662l-0.39-0.61
c-0.227-0.391-0.284-0.823-0.174-1.235c0.109-0.406,0.37-0.745,0.734-0.955c0.716-0.417,1.739-0.148,2.159,0.579l1.381,2.223
h2.718c1.074,0,1.948,0.874,1.948,1.948V12.057z"/>
</g>
</g>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns="&amp;ns_sfw;"
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"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="28px"
height="33px"
viewBox="0 0 28 33"
enable-background="new 0 0 28 33"
xml:space="preserve"
sodipodi:docname="green_shop.svg"
inkscape:version="0.92.3 (2405546, 2018-03-11)"><defs
id="defs23" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1707"
inkscape:window-height="910"
id="namedview21"
showgrid="false"
inkscape:zoom="7.1515152"
inkscape:cx="-9.0021186"
inkscape:cy="16.5"
inkscape:window-x="32"
inkscape:window-y="20"
inkscape:window-maximized="0"
inkscape:current-layer="g14" />
<metadata
id="metadata2">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
height="96"
width="16383"
y="-85.5"
x="-8112"
bottomLeftOrigin="true" />
</ns:sfw>
<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>
<g
id="g18">
<path
opacity="0.25"
fill="#282828"
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"
id="path4" />
<g
id="g16">
<path
fill="#FFFFFF"
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"
id="path6" />
<g
id="g14">
<path
fill="#C1122B"
d="M21.552,10.282h-3.274l-1.683-2.709c-0.165-0.287-0.533-0.384-0.8-0.228 c-0.135,0.078-0.229,0.201-0.27,0.35c-0.041,0.153-0.019,0.315,0.062,0.457l1.359,2.129h-6.311l1.379-2.161 c0.066-0.114,0.087-0.271,0.046-0.421c-0.04-0.15-0.136-0.275-0.271-0.353c-0.266-0.156-0.64-0.053-0.787,0.202l-1.697,2.733 H6.448c-0.522,0-0.948,0.426-0.948,0.948v0.827c0,0.492,0.363,0.97,0.793,1.041l0.105,0.018h15.156l0.119-0.016 c0.44-0.058,0.827-0.545,0.827-1.043V11.23C22.5,10.708,22.074,10.282,21.552,10.282z"
id="path8"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M8.057,20.02c0.007,0.222,0.122,0.337,0.263,0.337h11.365c0.142,0,0.257-0.115,0.257-0.256l0.007-0.1 l0.971-5.886H7.082L8.057,20.02z M17.116,16.074c0-0.298,0.22-0.539,0.518-0.539c0.297,0,0.516,0.241,0.516,0.539v2.017 c0,0.298-0.219,0.539-0.516,0.539c-0.298,0-0.518-0.241-0.518-0.539V16.074z M14.694,16.074c0-0.298,0.219-0.539,0.517-0.539 s0.517,0.241,0.517,0.539v2.017c0,0.298-0.219,0.539-0.517,0.539s-0.517-0.241-0.517-0.539V16.074z M12.272,16.074 c0-0.298,0.219-0.539,0.517-0.539c0.297,0,0.517,0.241,0.517,0.539v2.017c0,0.298-0.22,0.539-0.517,0.539 c-0.298,0-0.517-0.241-0.517-0.539V16.074z M9.85,16.074c0-0.298,0.219-0.539,0.517-0.539c0.297,0,0.516,0.241,0.516,0.539v2.017 c0,0.298-0.219,0.539-0.516,0.539c-0.298,0-0.517-0.241-0.517-0.539V16.074z"
id="path10"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.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.333C28,6.717,21.72,0,14,0z M23.5,12.057 c0,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.831H8.744c-1.052,0-1.925-0.855-1.947-1.906 l-1.024-5.828C5.036,13.691,4.5,12.91,4.5,12.057V11.23c0-1.074,0.874-1.948,1.948-1.948H8.75l1.396-2.247 c0.4-0.698,1.417-0.978,2.145-0.555c0.755,0.435,1.015,1.403,0.58,2.159l-0.41,0.642h2.662l-0.39-0.61 c-0.227-0.391-0.284-0.823-0.174-1.235c0.109-0.406,0.37-0.745,0.734-0.955c0.716-0.417,1.739-0.148,2.159,0.579l1.381,2.223 h2.718c1.074,0,1.948,0.874,1.948,1.948V12.057z"
id="path12"
style="fill:#0b8c61;fill-opacity:1" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@@ -1,73 +1,91 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_extend "http://ns.adobe.com/Extensibility/1.0/">
<!ENTITY ns_ai "http://ns.adobe.com/AdobeIllustrator/10.0/">
<!ENTITY ns_graphs "http://ns.adobe.com/Graphs/1.0/">
<!ENTITY ns_vars "http://ns.adobe.com/Variables/1.0/">
<!ENTITY ns_imrep "http://ns.adobe.com/ImageReplacement/1.0/">
<!ENTITY ns_sfw "http://ns.adobe.com/SaveForWeb/1.0/">
<!ENTITY ns_custom "http://ns.adobe.com/GenericCustomNamespace/1.0/">
<!ENTITY ns_adobe_xpath "http://ns.adobe.com/XPath/1.0/">
]>
<svg version="1.1" id="Layer_1" xmlns:x="&ns_extend;" xmlns:i="&ns_ai;" xmlns:graph="&ns_graphs;"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="28px" height="33px"
viewBox="0 0 28 33" enable-background="new 0 0 28 33" xml:space="preserve">
<metadata>
<sfw xmlns="&ns_sfw;">
<slices></slices>
<sliceSourceBounds height="96" width="16383" y="-85.5" x="-8112" bottomLeftOrigin="true"></sliceSourceBounds>
</sfw>
</metadata>
<g>
<path opacity="0.25" fill="#282828" 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"/>
<g>
<path fill="#FFFFFF" 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"/>
<path fill="#C1122B" d="M14,0C6.28,0,0,6.717,0,13.333c0,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.333C28,6.717,21.72,0,14,0z M14.002,30.908
C10.865,28.805,1,21.533,1,13.333C1,7.511,6.56,1,14,1s13,6.511,13,12.333C27,21.682,17.14,28.843,14.002,30.908z"/>
<g>
<g>
<path fill="#C1122B" d="M19.457,22.366H8.494c-1.074,0-1.965-0.873-1.988-1.946l-1.079-6.143
C4.661,13.986,4.1,13.177,4.1,12.295v-0.866c0-1.097,0.892-1.989,1.988-1.989h2.441l1.479-2.379
c0.408-0.709,1.438-0.99,2.177-0.563c0.37,0.214,0.635,0.559,0.747,0.973c0.11,0.413,0.054,0.846-0.16,1.216l-0.479,0.751h2.98
L14.813,8.72c-0.229-0.395-0.288-0.833-0.177-1.251c0.11-0.413,0.375-0.758,0.745-0.971c0.731-0.428,1.766-0.151,2.191,0.588
l1.463,2.354h2.877c1.096,0,1.988,0.892,1.988,1.989v0.866c0,0.894-0.594,1.719-1.382,1.996l-1.08,6.199
C21.423,21.492,20.532,22.366,19.457,22.366z M6.088,10.383c-0.576,0-1.045,0.47-1.045,1.046v0.866
c0,0.54,0.401,1.064,0.874,1.143l0.33,0.055l1.195,6.836c0.019,0.635,0.488,1.094,1.052,1.094h10.964
c0.565,0,1.034-0.459,1.045-1.023l1.199-6.915l0.344-0.045c0.494-0.064,0.912-0.588,0.912-1.145v-0.866
c0-0.576-0.469-1.046-1.045-1.046H18.51L16.762,7.57c-0.186-0.324-0.605-0.433-0.909-0.256
c-0.153,0.088-0.262,0.229-0.307,0.398c-0.046,0.175-0.021,0.358,0.072,0.518l1.373,2.152h-6.42l1.393-2.183
c0.077-0.134,0.1-0.313,0.055-0.483c-0.046-0.17-0.156-0.313-0.308-0.401c-0.304-0.179-0.729-0.061-0.895,0.23l-1.763,2.838
H6.088z"/>
</g>
<g>
<path fill="#C1122B" d="M19.956,21.986H8.049c-0.697,0-1.264-0.566-1.264-1.263l-1.207-7.266h16.845l-1.204,7.282
C21.22,21.419,20.653,21.986,19.956,21.986z M6.69,14.399l1.031,6.247c0.006,0.253,0.151,0.397,0.328,0.397h11.907
c0.177,0,0.321-0.144,0.321-0.32l0.006-0.097l1.029-6.226H6.69z"/>
</g>
<g>
<g>
<path fill="#C1122B" d="M17.807,19.181c0.311,0,0.541-0.253,0.541-0.565v-2.113c0-0.312-0.23-0.565-0.541-0.565
c-0.312,0-0.542,0.253-0.542,0.565v2.113C17.264,18.929,17.495,19.181,17.807,19.181z"/>
</g>
<g>
<path fill="#C1122B" d="M15.268,19.181c0.312,0,0.542-0.253,0.542-0.565v-2.113c0-0.312-0.23-0.565-0.542-0.565
s-0.542,0.253-0.542,0.565v2.113C14.727,18.929,14.957,19.181,15.268,19.181z"/>
</g>
<g>
<path fill="#C1122B" d="M12.731,19.181c0.311,0,0.542-0.253,0.542-0.565v-2.113c0-0.312-0.23-0.565-0.542-0.565
c-0.312,0-0.542,0.253-0.542,0.565v2.113C12.19,18.929,12.419,19.181,12.731,19.181z"/>
</g>
<g>
<path fill="#C1122B" d="M10.194,19.181c0.311,0,0.541-0.253,0.541-0.565v-2.113c0-0.312-0.23-0.565-0.541-0.565
c-0.312,0-0.542,0.253-0.542,0.565v2.113C9.652,18.929,9.882,19.181,10.194,19.181z"/>
</g>
</g>
</g>
</g>
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:ns="&amp;ns_sfw;"
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"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="28px"
height="33px"
viewBox="0 0 28 33"
enable-background="new 0 0 28 33"
xml:space="preserve"
sodipodi:docname="green_shop.svg"
inkscape:version="0.92.3 (2405546, 2018-03-11)"><defs
id="defs23" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1707"
inkscape:window-height="910"
id="namedview21"
showgrid="false"
inkscape:zoom="7.1515152"
inkscape:cx="-9.0021186"
inkscape:cy="16.5"
inkscape:window-x="32"
inkscape:window-y="20"
inkscape:window-maximized="0"
inkscape:current-layer="g14" />
<metadata
id="metadata2">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
height="96"
width="16383"
y="-85.5"
x="-8112"
bottomLeftOrigin="true" />
</ns:sfw>
<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>
<g
id="g18">
<path
opacity="0.25"
fill="#282828"
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"
id="path4" />
<g
id="g16">
<path
fill="#FFFFFF"
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"
id="path6" />
<g
id="g14">
<path
fill="#C1122B"
d="M21.552,10.282h-3.274l-1.683-2.709c-0.165-0.287-0.533-0.384-0.8-0.228 c-0.135,0.078-0.229,0.201-0.27,0.35c-0.041,0.153-0.019,0.315,0.062,0.457l1.359,2.129h-6.311l1.379-2.161 c0.066-0.114,0.087-0.271,0.046-0.421c-0.04-0.15-0.136-0.275-0.271-0.353c-0.266-0.156-0.64-0.053-0.787,0.202l-1.697,2.733 H6.448c-0.522,0-0.948,0.426-0.948,0.948v0.827c0,0.492,0.363,0.97,0.793,1.041l0.105,0.018h15.156l0.119-0.016 c0.44-0.058,0.827-0.545,0.827-1.043V11.23C22.5,10.708,22.074,10.282,21.552,10.282z"
id="path8"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M8.057,20.02c0.007,0.222,0.122,0.337,0.263,0.337h11.365c0.142,0,0.257-0.115,0.257-0.256l0.007-0.1 l0.971-5.886H7.082L8.057,20.02z M17.116,16.074c0-0.298,0.22-0.539,0.518-0.539c0.297,0,0.516,0.241,0.516,0.539v2.017 c0,0.298-0.219,0.539-0.516,0.539c-0.298,0-0.518-0.241-0.518-0.539V16.074z M14.694,16.074c0-0.298,0.219-0.539,0.517-0.539 s0.517,0.241,0.517,0.539v2.017c0,0.298-0.219,0.539-0.517,0.539s-0.517-0.241-0.517-0.539V16.074z M12.272,16.074 c0-0.298,0.219-0.539,0.517-0.539c0.297,0,0.517,0.241,0.517,0.539v2.017c0,0.298-0.22,0.539-0.517,0.539 c-0.298,0-0.517-0.241-0.517-0.539V16.074z M9.85,16.074c0-0.298,0.219-0.539,0.517-0.539c0.297,0,0.516,0.241,0.516,0.539v2.017 c0,0.298-0.219,0.539-0.516,0.539c-0.298,0-0.517-0.241-0.517-0.539V16.074z"
id="path10"
style="fill:#0b8c61;fill-opacity:1" />
<path
fill="#C1122B"
d="M14,0C6.28,0,0,6.717,0,13.333c0,9.941,13.132,18.169,13.691,18.571C13.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.333C28,6.717,21.72,0,14,0z M23.5,12.057 c0,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.831H8.744c-1.052,0-1.925-0.855-1.947-1.906 l-1.024-5.828C5.036,13.691,4.5,12.91,4.5,12.057V11.23c0-1.074,0.874-1.948,1.948-1.948H8.75l1.396-2.247 c0.4-0.698,1.417-0.978,2.145-0.555c0.755,0.435,1.015,1.403,0.58,2.159l-0.41,0.642h2.662l-0.39-0.61 c-0.227-0.391-0.284-0.823-0.174-1.235c0.109-0.406,0.37-0.745,0.734-0.955c0.716-0.417,1.739-0.148,2.159,0.579l1.381,2.223 h2.718c1.074,0,1.948,0.874,1.948,1.948V12.057z"
id="path12"
style="fill:#0b8c61;fill-opacity:1" />
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="18" viewBox="0 0 20 18">
<path fill="#FFF" fill-opacity=".5" fill-rule="nonzero" d="M18.338 10.593l1.64-7.312a.841.841 0 0 0-.812-1.031H5.528L5.21.675A.836.836 0 0 0 4.393 0H.833A.839.839 0 0 0 0 .844v.562c0 .466.373.844.833.844H3.26l2.439 12.074c-.584.34-.977.977-.977 1.707 0 1.088.87 1.969 1.945 1.969 1.074 0 1.944-.881 1.944-1.969 0-.55-.224-1.049-.584-1.406h7.28c-.36.357-.585.855-.585 1.406 0 1.088.87 1.969 1.945 1.969 1.074 0 1.944-.881 1.944-1.969 0-.78-.447-1.453-1.096-1.772l.191-.853a.841.841 0 0 0-.812-1.031h-9.32l-.228-1.125h10.179c.389 0 .726-.273.813-.657z"/>
</svg>

After

Width:  |  Height:  |  Size: 648 B

View File

@@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16">
<g fill="none" fill-rule="evenodd">
<path d="M0 0h16v16H0z"/>
<path fill="#F4704C" d="M13.85 5.928h-1.234v-1.54c0-2.338-2.026-4.234-4.525-4.234-2.5 0-4.526 1.896-4.526 4.235v1.54H2.33c-.682 0-1.235.516-1.235 1.154v7.7c0 .637.553 1.154 1.235 1.154h11.52c.681 0 1.234-.517 1.234-1.154v-7.7c0-.638-.553-1.155-1.234-1.155zM4.8 4.388c0-1.7 1.473-3.08 3.29-3.08 1.818 0 3.292 1.38 3.292 3.08v1.54H4.799v-1.54z"/>
<path fill="#FFF" d="M8.296 13.23c1.243 0 2.25-.942 2.25-2.105 0-1.162-1.007-2.105-2.25-2.105-1.242 0-2.25.943-2.25 2.105.003 1.162 1.009 2.103 2.25 2.106zm0-3.211c.654 0 1.183.495 1.183 1.106 0 .612-.53 1.107-1.183 1.107s-1.183-.495-1.183-1.107c0-.61.53-1.106 1.183-1.106z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 812 B

View File

@@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 16 16">
<defs>
<path id="a" d="M15 15.2a.79.79 0 0 1-.778.8H1.778A.79.79 0 0 1 1 15.2v-2.4c0-2.21 1.741-4 3.889-4h6.222c2.148 0 3.889 1.79 3.889 4v2.4zM8 8C5.852 8 4.111 6.21 4.111 4S5.852 0 8 0c2.148 0 3.889 1.79 3.889 4S10.148 8 8 8z"/>
</defs>
<use fill="#F4704C" fill-rule="nonzero" xlink:href="#a"/>
</svg>

After

Width:  |  Height:  |  Size: 451 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -1 +0,0 @@
angular.module("admin.accounts_and_billing_settings", ["admin.utils"])

View File

@@ -1,14 +0,0 @@
angular.module("admin.accounts_and_billing_settings").directive "methodSettingsFor", ->
template: "<div ng-include='include_html'></div>"
restrict: 'A'
scope: {
enterprise_id: '=methodSettingsFor'
}
link: (scope, element, attrs) ->
scope.include_html = ""
scope.$watch "enterprise_id", (newVal, oldVal)->
if !newVal? || newVal == ""
scope.include_html = ""
else
scope.include_html = "/admin/accounts_and_billing_settings/show_methods?enterprise_id=#{newVal};"

View File

@@ -1,3 +1,14 @@
angular.module("ofn.admin", ["ngResource", "ngAnimate", "admin.utils", "admin.indexUtils", "admin.dropdown", "admin.products", "admin.taxons", "infinite-scroll"]).config ($httpProvider) ->
angular.module("ofn.admin", [
"ngResource",
"mm.foundation",
"angularFileUpload",
"ngAnimate",
"admin.utils",
"admin.indexUtils",
"admin.dropdown",
"admin.products",
"admin.taxons",
"infinite-scroll"
]).config ($httpProvider) ->
$httpProvider.defaults.headers.common["X-CSRF-Token"] = $("meta[name=csrf-token]").attr("content")
$httpProvider.defaults.headers.common["Accept"] = "application/json, text/javascript, */*"

View File

@@ -8,22 +8,20 @@
//= require jquery
//= require jquery-migrate-min
//= require jquery_ujs
//= require jquery-ui
//= require shared/jquery-ui-timepicker-addon
//= require jquery.ui.all
//= require jquery-ui-timepicker-addon
//= require angular
//= require angular-resource
//= require angular-animate
//= require angular-sanitize
//= require admin/spree_backend
//= require admin/spree_auth
//= require admin/spree_paypal_express
//= require ../shared/ng-infinite-scroll.min.js
//= require ../shared/ng-tags-input.min.js
//= require moment
//= require angular-rails-templates
//= require_tree ../templates/admin
//= require ./admin_ofn
//= require ./accounts_and_billing_settings/accounts_and_billing_settings
//= require ./business_model_configuration/business_model_configuration
//= require ./customers/customers
//= require ./dropdown/dropdown
//= require ./enterprises/enterprises
@@ -35,10 +33,13 @@
//= require ./orders/orders
//= require ./order_cycles/order_cycles
//= require ./payment_methods/payment_methods
//= require ./payments/payments
//= require ./product_import/product_import
//= require ./products/products
//= require ./resources/resources
//= require ./shipping_methods/shipping_methods
//= require ./side_menu/side_menu
//= require ./subscriptions/subscriptions
//= require ./tag_rules/tag_rules
//= require ./taxons/taxons
//= require ./utils/utils
@@ -49,6 +50,17 @@
//= require textAngular.min.js
//= require i18n/translations
//= require darkswarm/i18n.translate.js
//= require moment
//= require moment/de.js
//= require moment/en-gb.js
//= require moment/es.js
//= require moment/fr.js
//= require moment/it.js
//= require moment/nb.js
//= require moment/pt-br.js
//= require moment/pt.js
//= require moment/sv.js
//= require ../shared/mm-foundation-tpls-0.9.0-20180826174721.min.js
//= require angularjs-file-upload
//= require_tree .

View File

@@ -1,267 +1,287 @@
angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout, $http, $window, BulkProducts, DisplayProperties, dataFetcher, DirtyProducts, VariantUnitManager, StatusMessage, producers, Taxons, SpreeApiAuth, Columns, tax_categories) ->
$scope.loading = true
angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout, $filter, $http, $window, BulkProducts, DisplayProperties, DirtyProducts, VariantUnitManager, StatusMessage, producers, Taxons, SpreeApiAuth, Columns, tax_categories, RequestMonitor) ->
$scope.StatusMessage = StatusMessage
$scope.StatusMessage = StatusMessage
$scope.columns = Columns.columns
$scope.columns = Columns.columns
$scope.variant_unit_options = VariantUnitManager.variantUnitOptions()
$scope.variant_unit_options = VariantUnitManager.variantUnitOptions()
$scope.RequestMonitor = RequestMonitor
$scope.pagination = BulkProducts.pagination
$scope.per_page_options = [
{id: 15, name: t('js.admin.orders.index.per_page', results: 15)},
{id: 50, name: t('js.admin.orders.index.per_page', results: 50)},
{id: 100, name: t('js.admin.orders.index.per_page', results: 100)}
]
$scope.filterableColumns = [
{ name: t("label_producers"), db_column: "producer_name" },
{ name: t("name"), db_column: "name" }
]
$scope.filterableColumns = [
{ name: t("label_producers"), db_column: "producer_name" },
{ name: t("name"), db_column: "name" }
]
$scope.filterTypes = [
{ name: t("equals"), predicate: "eq" },
{ name: t("contains"), predicate: "cont" }
]
$scope.filterTypes = [
{ name: t("equals"), predicate: "eq" },
{ name: t("contains"), predicate: "cont" }
]
$scope.optionTabs =
filters: { title: t("filter_products"), visible: false }
$scope.optionTabs =
filters: { title: t("filter_products"), visible: false }
$scope.producers = producers
$scope.taxons = Taxons.all
$scope.tax_categories = tax_categories
$scope.producerFilter = ""
$scope.categoryFilter = ""
$scope.importDateFilter = ""
$scope.page = 1
$scope.per_page = 15
$scope.products = BulkProducts.products
$scope.query = ""
$scope.DisplayProperties = DisplayProperties
$scope.initialise = ->
SpreeApiAuth.authorise()
.then ->
$scope.spree_api_key_ok = true
$scope.fetchProducts()
.catch (message) ->
$scope.api_error_msg = message
$scope.$watchCollection '[query, producerFilter, categoryFilter, importDateFilter, per_page]', ->
$scope.page = 1 # Reset page when changing filters for new search
$scope.changePage = (newPage) ->
$scope.page = newPage
$scope.fetchProducts()
$scope.fetchProducts = ->
removeClearedValues()
params = {
'q[name_cont]': $scope.query,
'q[supplier_id_eq]': $scope.producerFilter,
'q[primary_taxon_id_eq]': $scope.categoryFilter,
import_date: $scope.importDateFilter,
page: $scope.page,
per_page: $scope.per_page
}
RequestMonitor.load(BulkProducts.fetch(params).$promise).then ->
$scope.resetProducts()
removeClearedValues = ->
delete $scope.producerFilter if $scope.producerFilter == "0"
delete $scope.categoryFilter if $scope.categoryFilter == "0"
delete $scope.importDateFilter if $scope.importDateFilter == "0"
$timeout ->
if $scope.showLatestImport
$scope.importDateFilter = $scope.importDates[1].id
$scope.resetProducts = ->
DirtyProducts.clear()
StatusMessage.clear()
$scope.updateOnHand = (product) ->
on_demand_variants = []
if product.variants
on_demand_variants = (variant for id, variant of product.variants when variant.on_demand)
unless product.on_demand || on_demand_variants.length > 0
product.on_hand = $scope.onHand(product)
$scope.producers = producers
$scope.taxons = Taxons.all
$scope.tax_categories = tax_categories
$scope.filterProducers = [{id: "0", name: ""}].concat $scope.producers
$scope.filterTaxons = [{id: "0", name: ""}].concat $scope.taxons
$scope.onHand = (product) ->
onHand = 0
if product.hasOwnProperty("variants") and product.variants instanceof Object
for id, variant of product.variants
onHand = onHand + parseInt(if variant.on_hand > 0 then variant.on_hand else 0)
else
onHand = "error"
onHand
$scope.shiftTab = (tab) ->
$scope.visibleTab.visible = false unless $scope.visibleTab == tab || $scope.visibleTab == undefined
tab.visible = !tab.visible
$scope.visibleTab = tab
$scope.resetSelectFilters = ->
$scope.query = ""
$scope.producerFilter = "0"
$scope.categoryFilter = "0"
$scope.products = BulkProducts.products
$scope.filteredProducts = []
$scope.currentFilters = []
$scope.limit = 15
$scope.productsWithUnsavedVariants = []
$scope.query = ""
$scope.DisplayProperties = DisplayProperties
$scope.importDateFilter = "0"
$scope.initialise = ->
SpreeApiAuth.authorise()
.then ->
$scope.spree_api_key_ok = true
$scope.fetchProducts()
.catch (message) ->
$scope.api_error_msg = message
$scope.$watchCollection '[query, producerFilter, categoryFilter]', ->
$scope.limit = 15 # Reset limit whenever searching
$scope.fetchProducts = ->
$scope.loading = true
BulkProducts.fetch($scope.currentFilters).then ->
$scope.resetProducts()
$scope.loading = false
$scope.editWarn = (product, variant) ->
if (DirtyProducts.count() > 0 and confirm(t("unsaved_changes_confirmation"))) or (DirtyProducts.count() == 0)
window.location = "/admin/products/" + product.permalink_live + ((if variant then "/variants/" + variant.id else "")) + "/edit"
$scope.resetProducts = ->
DirtyProducts.clear()
StatusMessage.clear()
$scope.toggleShowAllVariants = ->
showVariants = !DisplayProperties.showVariants 0
$scope.products.forEach (product) ->
DisplayProperties.setShowVariants product.id, showVariants
DisplayProperties.setShowVariants 0, showVariants
# $scope.matchProducer = (product) ->
# for producer in $scope.producers
# if angular.equals(producer.id, product.producer)
# product.producer = producer
# break
$scope.addVariant = (product) ->
product.variants.push
id: $scope.nextVariantId()
unit_value: null
unit_description: null
on_demand: false
display_as: null
display_name: null
on_hand: null
price: null
DisplayProperties.setShowVariants product.id, true
$scope.updateOnHand = (product) ->
on_demand_variants = []
if product.variants
on_demand_variants = (variant for id, variant of product.variants when variant.on_demand)
$scope.nextVariantId = ->
$scope.variantIdCounter = 0 unless $scope.variantIdCounter?
$scope.variantIdCounter -= 1
$scope.variantIdCounter
unless product.on_demand || on_demand_variants.length > 0
product.on_hand = $scope.onHand(product)
$scope.onHand = (product) ->
onHand = 0
if product.hasOwnProperty("variants") and product.variants instanceof Object
for id, variant of product.variants
onHand = onHand + parseInt(if variant.on_hand > 0 then variant.on_hand else 0)
else
onHand = "error"
onHand
$scope.shiftTab = (tab) ->
$scope.visibleTab.visible = false unless $scope.visibleTab == tab || $scope.visibleTab == undefined
tab.visible = !tab.visible
$scope.visibleTab = tab
$scope.resetSelectFilters = ->
$scope.query = ""
$scope.producerFilter = "0"
$scope.categoryFilter = "0"
$scope.editWarn = (product, variant) ->
if (DirtyProducts.count() > 0 and confirm(t("unsaved_changes_confirmation"))) or (DirtyProducts.count() == 0)
window.location = "/admin/products/" + product.permalink_live + ((if variant then "/variants/" + variant.id else "")) + "/edit"
$scope.toggleShowAllVariants = ->
showVariants = !DisplayProperties.showVariants 0
$scope.filteredProducts.forEach (product) ->
DisplayProperties.setShowVariants product.id, showVariants
DisplayProperties.setShowVariants 0, showVariants
$scope.addVariant = (product) ->
product.variants.push
id: $scope.nextVariantId()
unit_value: null
unit_description: null
on_demand: false
display_as: null
display_name: null
on_hand: null
price: null
$scope.productsWithUnsavedVariants.push product
DisplayProperties.setShowVariants product.id, true
$scope.nextVariantId = ->
$scope.variantIdCounter = 0 unless $scope.variantIdCounter?
$scope.variantIdCounter -= 1
$scope.variantIdCounter
$scope.deleteProduct = (product) ->
if confirm("Are you sure?")
$http(
method: "DELETE"
url: "/api/products/" + product.id + "/soft_delete"
).success (data) ->
$scope.products.splice $scope.products.indexOf(product), 1
DirtyProducts.deleteProduct product.id
$scope.displayDirtyProducts()
$scope.deleteVariant = (product, variant) ->
if product.variants.length > 1
if !$scope.variantSaved(variant)
$scope.removeVariant(product, variant)
else
if confirm(t("are_you_sure"))
$http(
method: "DELETE"
url: "/api/products/" + product.permalink_live + "/variants/" + variant.id + "/soft_delete"
).success (data) ->
$scope.removeVariant(product, variant)
else
alert(t("delete_product_variant"))
$scope.removeVariant = (product, variant) ->
product.variants.splice product.variants.indexOf(variant), 1
DirtyProducts.deleteVariant product.id, variant.id
$scope.displayDirtyProducts()
$scope.cloneProduct = (product) ->
BulkProducts.cloneProduct product
$scope.hasVariants = (product) ->
product.variants.length > 0
$scope.hasUnit = (product) ->
product.variant_unit_with_scale?
$scope.variantSaved = (variant) ->
variant.hasOwnProperty('id') && variant.id > 0
$scope.hasOnDemandVariants = (product) ->
(variant for id, variant of product.variants when variant.on_demand).length > 0
$scope.submitProducts = ->
# Pack pack $scope.products, so they will match the list returned from the server,
# then pack $scope.dirtyProducts, ensuring that the correct product info is sent to the server.
$scope.packProduct product for id, product of $scope.products
$scope.packProduct product for id, product of DirtyProducts.all()
productsToSubmit = filterSubmitProducts(DirtyProducts.all())
if productsToSubmit.length > 0
$scope.updateProducts productsToSubmit # Don't submit an empty list
else
StatusMessage.display 'alert', t("products_change")
$scope.updateProducts = (productsToSubmit) ->
$scope.displayUpdating()
$scope.deleteProduct = (product) ->
if confirm("Are you sure?")
$http(
method: "POST"
url: "/admin/products/bulk_update"
data:
products: productsToSubmit
filters: $scope.currentFilters
).success((data) ->
DirtyProducts.clear()
BulkProducts.updateVariantLists(data.products, $scope.productsWithUnsavedVariants)
$timeout -> $scope.displaySuccess()
).error (data, status) ->
if status == 400 && data.errors? && data.errors.length > 0
errors = error + "\n" for error in data.errors
alert t("products_update_error") + "\n" + errors
$scope.displayFailure t("products_update_error")
else
$scope.displayFailure t("products_update_error_data") + status
method: "DELETE"
url: "/api/products/" + product.id + "/soft_delete"
).success (data) ->
$scope.products.splice $scope.products.indexOf(product), 1
DirtyProducts.deleteProduct product.id
$scope.displayDirtyProducts()
$scope.cancel = (destination) ->
$window.location = destination
$scope.packProduct = (product) ->
if product.variant_unit_with_scale
match = product.variant_unit_with_scale.match(/^([^_]+)_([\d\.]+)$/)
if match
product.variant_unit = match[1]
product.variant_unit_scale = parseFloat(match[2])
else
product.variant_unit = product.variant_unit_with_scale
product.variant_unit_scale = null
$scope.deleteVariant = (product, variant) ->
if product.variants.length > 1
if !$scope.variantSaved(variant)
$scope.removeVariant(product, variant)
else
product.variant_unit = product.variant_unit_scale = null
if confirm(t("are_you_sure"))
$http(
method: "DELETE"
url: "/api/products/" + product.permalink_live + "/variants/" + variant.id + "/soft_delete"
).success (data) ->
$scope.removeVariant(product, variant)
else
alert(t("delete_product_variant"))
$scope.packVariant product, product.master if product.master
if product.variants
for id, variant of product.variants
$scope.packVariant product, variant
$scope.removeVariant = (product, variant) ->
product.variants.splice product.variants.indexOf(variant), 1
DirtyProducts.deleteVariant product.id, variant.id
$scope.displayDirtyProducts()
$scope.packVariant = (product, variant) ->
if variant.hasOwnProperty("unit_value_with_description")
match = variant.unit_value_with_description.match(/^([\d\.]+(?= |$)|)( |)(.*)$/)
if match
product = BulkProducts.find product.id
variant.unit_value = parseFloat(match[1])
variant.unit_value = null if isNaN(variant.unit_value)
variant.unit_value *= product.variant_unit_scale if variant.unit_value && product.variant_unit_scale
variant.unit_description = match[3]
$scope.cloneProduct = (product) ->
BulkProducts.cloneProduct product
$scope.incrementLimit = ->
if $scope.limit < $scope.products.length
$scope.limit = $scope.limit + 5
$scope.hasVariants = (product) ->
product.variants.length > 0
$scope.displayUpdating = ->
StatusMessage.display 'progress', t("saving")
$scope.hasUnit = (product) ->
product.variant_unit_with_scale?
$scope.displaySuccess = ->
StatusMessage.display 'success',t("products_changes_saved")
$scope.bulk_product_form.$setPristine()
$scope.variantSaved = (variant) ->
variant.hasOwnProperty('id') && variant.id > 0
$scope.displayFailure = (failMessage) ->
StatusMessage.display 'failure', t("products_update_error_msg") + "#{failMessage}"
$scope.hasOnDemandVariants = (product) ->
(variant for id, variant of product.variants when variant.on_demand).length > 0
$scope.displayDirtyProducts = ->
count = DirtyProducts.count()
switch count
when 0 then StatusMessage.clear()
when 1 then StatusMessage.display 'notice', t("one_product_unsaved")
else StatusMessage.display 'notice', t("products_unsaved", n: count)
$scope.submitProducts = ->
# Pack pack $scope.products, so they will match the list returned from the server,
# then pack $scope.dirtyProducts, ensuring that the correct product info is sent to the server.
$scope.packProduct product for id, product of $scope.products
$scope.packProduct product for id, product of DirtyProducts.all()
productsToSubmit = filterSubmitProducts(DirtyProducts.all())
if productsToSubmit.length > 0
$scope.updateProducts productsToSubmit # Don't submit an empty list
else
StatusMessage.display 'alert', t("products_change")
$scope.updateProducts = (productsToSubmit) ->
$scope.displayUpdating()
$http(
method: "POST"
url: "/admin/products/bulk_update"
data:
products: productsToSubmit
filters:
'q[name_cont]': $scope.query
'q[supplier_id_eq]': $scope.producerFilter
'q[primary_taxon_id_eq]': $scope.categoryFilter
import_date: $scope.importDateFilter
page: $scope.page
per_page: $scope.per_page
).success((data) ->
DirtyProducts.clear()
BulkProducts.updateVariantLists(data.products || [])
$timeout -> $scope.displaySuccess()
).error (data, status) ->
if status == 400 && data.errors? && data.errors.length > 0
errors = error + "\n" for error in data.errors
alert t("products_update_error") + "\n" + errors
$scope.displayFailure t("products_update_error")
else
$scope.displayFailure t("products_update_error_data") + status
$scope.cancel = (destination) ->
$window.location = destination
$scope.packProduct = (product) ->
if product.variant_unit_with_scale
match = product.variant_unit_with_scale.match(/^([^_]+)_([\d\.]+)$/)
if match
product.variant_unit = match[1]
product.variant_unit_scale = parseFloat(match[2])
else
product.variant_unit = product.variant_unit_with_scale
product.variant_unit_scale = null
else
product.variant_unit = product.variant_unit_scale = null
$scope.packVariant product, product.master if product.master
if product.variants
for id, variant of product.variants
$scope.packVariant product, variant
$scope.packVariant = (product, variant) ->
if variant.hasOwnProperty("unit_value_with_description")
match = variant.unit_value_with_description.match(/^([\d\.]+(?= |$)|)( |)(.*)$/)
if match
product = BulkProducts.find product.id
variant.unit_value = parseFloat(match[1])
variant.unit_value = null if isNaN(variant.unit_value)
variant.unit_value *= product.variant_unit_scale if variant.unit_value && product.variant_unit_scale
variant.unit_description = match[3]
$scope.incrementLimit = ->
if $scope.limit < $scope.products.length
$scope.limit = $scope.limit + 5
$scope.displayUpdating = ->
StatusMessage.display 'progress', t("saving")
$scope.displaySuccess = ->
StatusMessage.display 'success',t("products_changes_saved")
$scope.bulk_product_form.$setPristine()
$scope.displayFailure = (failMessage) ->
StatusMessage.display 'failure', t("products_update_error_msg") + "#{failMessage}"
$scope.displayDirtyProducts = ->
count = DirtyProducts.count()
switch count
when 0 then StatusMessage.clear()
when 1 then StatusMessage.display 'notice', t("one_product_unsaved")
else StatusMessage.display 'notice', t("products_unsaved", n: count)
filterSubmitProducts = (productsToFilter) ->

View File

@@ -1 +0,0 @@
angular.module("admin.businessModelConfiguration", ["admin.utils"])

View File

@@ -1,25 +0,0 @@
angular.module("admin.businessModelConfiguration").controller "BusinessModelConfigCtrl", ($scope, $filter) ->
$scope.turnover = 1000
$scope.bill = ->
return $filter('currency')(0) unless $scope.fixed || $scope.rate
Number($scope.fixed) + Number($scope.turnover) * Number($scope.rate)
$scope.cappedBill = ->
return $scope.bill() if !$scope.cap? || Number($scope.cap) == 0
Math.min($scope.bill(), Number($scope.cap))
$scope.finalBill = ->
return 0 if Number($scope.turnover) < Number($scope.minBillableTurnover)
$scope.cappedBill()
$scope.capReached = ->
return t('no') if !$scope.cap? || Number($scope.cap) == 0
if $scope.bill() >= Number($scope.cap) then t('yes') else t('no')
$scope.includedTax = ->
return 0 if !$scope.taxRate? || Number($scope.taxRate) == 0
($scope.cappedBill() * Number($scope.taxRate))
$scope.total = ->
$scope.finalBill() + $scope.includedTax()

View File

@@ -1,2 +0,0 @@
angular.module("ofn.admin").controller "enterprisesDashboardCtrl", ($scope) ->
$scope.activeTab = "hubs"

View File

@@ -1,4 +1,4 @@
angular.module("admin.customers").controller "customersCtrl", ($scope, $q, $filter, Customers, TagRuleResource, CurrentShop, RequestMonitor, Columns, pendingChanges, shops, availableCountries) ->
angular.module("admin.customers").controller "customersCtrl", ($scope, $q, $filter, Customers, TagRuleResource, CurrentShop, RequestMonitor, Columns, SortOptions, pendingChanges, shops, availableCountries) ->
$scope.shops = shops
$scope.availableCountries = availableCountries
$scope.RequestMonitor = RequestMonitor
@@ -6,13 +6,14 @@ angular.module("admin.customers").controller "customersCtrl", ($scope, $q, $filt
$scope.customerLimit = 20
$scope.customers = Customers.all
$scope.columns = Columns.columns
$scope.sorting = SortOptions
$scope.confirmRefresh = (event) ->
event.preventDefault() unless pendingChanges.unsavedCount() == 0 || confirm(t("unsaved_changes_warning"))
$scope.$watch "shop_id", ->
if $scope.shop_id?
CurrentShop.shop = $filter('filter')($scope.shops, {id: $scope.shop_id})[0]
CurrentShop.shop = $filter('filter')($scope.shops, {id: parseInt($scope.shop_id)}, true)[0]
Customers.index({enterprise_id: $scope.shop_id}).then (data) ->
pendingChanges.removeAll()
$scope.customers_form.$setPristine()

View File

@@ -1,36 +1,36 @@
angular.module("admin.customers").directive 'editAddressDialog', ($compile, $templateCache, $filter, DialogDefaults, Customers, StatusMessage) ->
angular.module("admin.customers").directive 'editAddressDialog', ($compile, $templateCache, DialogDefaults, Customers, StatusMessage, CountryStates) ->
restrict: 'A'
scope: true
link: (scope, element, attr) ->
template = null
scope.errors = []
scope.$watch 'address.country_id', (newVal) ->
if newVal
scope.states = scope.filter_states(newVal)
scope.$watch 'address.country_id', (newCountryID) ->
return unless newCountryID
scope.states = CountryStates.statesFor(scope.availableCountries, newCountryID)
unless CountryStates.addressStateMatchesCountryStates(scope.states, scope.address.state_id)
scope.address.state_id = ""
scope.updateAddress = ->
scope.edit_address_form.$setPristine()
if scope.edit_address_form.$valid
Customers.update(scope.address, scope.customer, scope.addressType).$promise.then (data) ->
scope.customer = data
scope.errors = []
template.dialog('close')
StatusMessage.display('success', t('admin.customers.index.update_address_success'))
else
scope.errors.push(t('admin.customers.index.update_address_error'))
template = $compile($templateCache.get('admin/edit_address_dialog.html'))(scope)
template.dialog(DialogDefaults)
element.bind 'click', (e) ->
if e.target.id == 'bill-address-link'
scope.addressType = 'bill_address'
else
scope.addressType = 'ship_address'
scope.address = scope.customer[scope.addressType]
scope.states = CountryStates.statesFor(scope.availableCountries, scope.address?.country_id)
template = $compile($templateCache.get('admin/edit_address_dialog.html'))(scope)
template.dialog(DialogDefaults)
template.dialog('open')
scope.$apply()
scope.filter_states = (countryID) ->
$filter('filter')(scope.availableCountries, {id: countryID})[0].states

View File

@@ -12,7 +12,10 @@ angular.module("admin.customers").directive 'newCustomerDialog', ($compile, $tem
scope.submitted = true
scope.errors = []
if scope.new_customer_form.$valid
Customers.add(scope.email).$promise.then (data) ->
params =
enterprise_id: CurrentShop.shop.id
email: scope.email
Customers.add(params).$promise.then (data) ->
if data.id
scope.email = ""
scope.submitted = false

View File

@@ -8,4 +8,4 @@ angular.module("ofn.admin").directive "datetimepicker", ->
onSelect: (dateText, inst) ->
scope.$apply (scope) ->
# Fires ngModel.$parsers
ngModel.$setViewValue dateText
ngModel.$setViewValue dateText

View File

@@ -0,0 +1,6 @@
angular.module("ofn.admin").directive "select2NoSearch", ($timeout) ->
restrict: 'CA'
link: (scope, element, attrs) ->
$timeout ->
element.select2
minimumResultsForSearch: Infinity

View File

@@ -1 +1 @@
angular.module("admin.dropdown", ['templates'])
angular.module("admin.dropdown", ['admin.utils'])

View File

@@ -1,6 +1,6 @@
angular.module('admin.enterpriseFees').controller 'enterpriseFeesCtrl', ($scope, $http, $window, enterprises, tax_categories, calculators) ->
$scope.enterprises = enterprises
$scope.tax_categories = [{id: -1, name: "Inherit From Product"}].concat tax_categories
$scope.tax_categories = [{id: -1, name: t('js.admin.enterprise_fees.inherit_from_product') }].concat tax_categories
$scope.calculators = calculators
$scope.enterpriseFeesUrl = ->

View File

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

View File

@@ -8,8 +8,8 @@ angular.module("admin.enterprise_groups")
{ name: 'users', label: t('users'), icon_class: "icon-user" }
{ name: 'about', label: t('about'), icon_class: "icon-pencil" }
{ name: 'images', label: t('images'), icon_class: "icon-picture" }
{ name: 'contact', label: t('admin_entreprise_groups_contact'), icon_class: "icon-phone" }
{ name: 'web', label: t('admin_entreprise_groups_web'), icon_class: "icon-globe" }
{ name: 'contact', label: t('admin_enterprise_groups_contact'), icon_class: "icon-phone" }
{ name: 'web', label: t('admin_enterprise_groups_web'), icon_class: "icon-globe" }
]
$scope.select(0)

View File

@@ -0,0 +1 @@
angular.module("admin.enterpriseRoles", [])

View File

@@ -0,0 +1,18 @@
# Used in enterprise new and edit forms to reset the state when the country is changed
angular.module("admin.enterprises").controller 'countryCtrl', ($scope, availableCountries) ->
$scope.countries = availableCountries
$scope.countriesById = $scope.countries.reduce (obj, country) ->
obj[country.id] = country
obj
, {}
$scope.$watch 'Enterprise.address.country_id', (newID, oldID) ->
$scope.clearState() unless $scope.addressStateMatchesCountry()
$scope.clearState = ->
$scope.Enterprise.address.state_id = null
$scope.addressStateMatchesCountry = ->
$scope.countriesById[$scope.Enterprise.address.country_id].states.some (state) ->
state.id == $scope.Enterprise.address.state_id

View File

@@ -1,18 +1,19 @@
angular.module("admin.enterprises")
.controller "enterpriseCtrl", ($scope, $window, NavigationCheck, enterprise, EnterprisePaymentMethods, EnterpriseShippingMethods, SideMenu, StatusMessage) ->
.controller "enterpriseCtrl", ($scope, $http, $window, NavigationCheck, enterprise, Enterprises, EnterprisePaymentMethods, EnterpriseShippingMethods, SideMenu, StatusMessage) ->
$scope.Enterprise = enterprise
$scope.PaymentMethods = EnterprisePaymentMethods.paymentMethods
$scope.ShippingMethods = EnterpriseShippingMethods.shippingMethods
$scope.navClear = NavigationCheck.clear
$scope.pristineEmail = $scope.Enterprise.email
$scope.menu = SideMenu
$scope.newManager = { id: '', email: (t('add_manager')) }
$scope.newManager = { id: null, email: (t('add_manager')) }
$scope.StatusMessage = StatusMessage
$scope.$watch 'enterprise_form.$dirty', (newValue) ->
StatusMessage.display 'notice', t('admin.unsaved_changes') if newValue
$scope.$watch 'newManager', (newValue) ->
$scope.addManager($scope.newManager) if newValue
$scope.setFormDirty = ->
$scope.$apply ->
$scope.enterprise_form.$setDirty()
@@ -28,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.$dirty
if $scope.enterprise_form != undefined && $scope.enterprise_form.$dirty
t('admin.unsaved_confirm_leave')
# Register the NavigationCheck callback
@@ -36,17 +37,57 @@ angular.module("admin.enterprises")
$scope.removeManager = (manager) ->
if manager.id?
if manager.id == $scope.Enterprise.owner.id or manager.id == parseInt($scope.receivesNotifications)
return
for i, user of $scope.Enterprise.users when user.id == manager.id
$scope.Enterprise.users.splice i, 1
if $scope.enterprise_form?
$scope.enterprise_form.$setDirty()
$scope.enterprise_form?.$setDirty()
$scope.addManager = (manager) ->
if manager.id? and manager.email?
if manager.id? and angular.isNumber(manager.id) and manager.email?
manager =
id: manager.id
email: manager.email
confirmed: manager.confirmed
if (user for user in $scope.Enterprise.users when user.id == manager.id).length == 0
$scope.Enterprise.users.push manager
$scope.Enterprise.users.unshift(manager)
$scope.enterprise_form?.$setDirty()
else
alert ("#{manager.email}" + " " + t("is_already_manager"))
$scope.inviteManager = ->
$scope.invite_errors = $scope.invite_success = null
email = $scope.newUser
$http.post("/admin/manager_invitations", {email: email, enterprise_id: $scope.Enterprise.id}).success (data)->
$scope.addManager({id: data.user, email: email})
$scope.invite_success = t('user_invited', email: email)
.error (data) ->
$scope.invite_errors = data.errors
$scope.resetModal = ->
$scope.newUser = $scope.invite_errors = $scope.invite_success = null
$scope.removeLogo = ->
return unless confirm(t("admin.enterprises.remove_logo.immediate_removal_warning"))
Enterprises.removeLogo($scope.Enterprise).then (data) ->
$scope.Enterprise = angular.copy(data)
$scope.$emit("enterprise:updated", $scope.Enterprise)
StatusMessage.display("success", t("admin.enterprises.remove_logo.removed_successfully"))
, (response) ->
if response.data.error?
StatusMessage.display("failure", response.data.error)
$scope.removePromoImage = ->
return unless confirm(t("admin.enterprises.remove_promo_image.immediate_removal_warning"))
Enterprises.removePromoImage($scope.Enterprise).then (data) ->
$scope.Enterprise = angular.copy(data)
$scope.$emit("enterprise:updated", $scope.Enterprise)
StatusMessage.display("success", t("admin.enterprises.remove_promo_image.removed_successfully"))
, (response) ->
if response.data.error?
StatusMessage.display("failure", response.data.error)

View File

@@ -0,0 +1,5 @@
angular.module("admin.enterprises").controller 'NewEnterpriseController', ($scope, defaultCountryID) ->
$scope.Enterprise =
address:
country_id: defaultCountryID
state_id: null

View File

@@ -22,7 +22,7 @@ angular.module("admin.enterprises")
{ name: 'users', label: t('users'), icon_class: "icon-user" }
]
$scope.select(0)
SideMenu.init()
$scope.showItem = (item) ->
if item.show?

View File

@@ -0,0 +1,11 @@
angular.module('admin.enterprises').directive 'enterpriseLimit', (InfoDialog) ->
restrict: 'A'
scope: {
limit_reached: '=enterpriseLimit',
modal_message: '@modalMessage'
}
link: (scope, element, attr) ->
element.bind 'click', (event)->
if scope.limit_reached
event.preventDefault()
InfoDialog.open 'error', scope.modal_message

View File

@@ -1,8 +0,0 @@
angular.module("admin.enterprises").directive "monthlyPricingDescription", (monthlyBillDescription) ->
restrict: 'E'
scope:
joiner: "@"
template: "<span ng-bind-html='billDescription'></span>"
link: (scope, element, attrs) ->
joiners = { comma: ", ", newline: "<br>" }
scope.billDescription = monthlyBillDescription.replace("{joiner}", joiners[scope.joiner])

View File

@@ -1 +1,26 @@
angular.module("admin.enterprises", [
angular.module("admin.enterprises", [
"admin.paymentMethods",
"admin.utils",
"admin.shippingMethods",
"admin.users",
"textAngular",
"admin.side_menu",
"admin.taxons",
'admin.indexUtils',
'admin.tagRules',
'admin.dropdown',
'ngSanitize']
)
# For more options: https://github.com/textAngular/textAngular/blob/master/src/textAngularSetup.js
.config [
'$provide', ($provide) ->
$provide.decorator 'taTranslations', [
'$delegate'
(taTranslations) ->
taTranslations.insertLink = {
tooltip: t('admin.enterprises.form.shop_preferences.shopfront_message_link_tooltip'),
dialogPrompt: t('admin.enterprises.form.shop_preferences.shopfront_message_link_prompt')
}
taTranslations
]
]

View File

@@ -1,7 +1,7 @@
angular.module("admin.enterprises")
.factory "EnterprisePaymentMethods", (enterprise, PaymentMethods) ->
new class EnterprisePaymentMethods
paymentMethods: PaymentMethods.paymentMethods
paymentMethods: PaymentMethods.all
constructor: ->
for payment_method in @paymentMethods

View File

@@ -1,7 +1,7 @@
angular.module("admin.enterprises")
.factory "EnterpriseShippingMethods", (enterprise, ShippingMethods) ->
new class EnterpriseShippingMethods
shippingMethods: ShippingMethods.shippingMethods
shippingMethods: ShippingMethods.all
constructor: ->
for shipping_method in @shippingMethods

View File

@@ -0,0 +1,4 @@
angular.module("ofn.admin").filter "importDate", ($filter) ->
return (products, importDate) ->
return products if importDate == "0"
$filter('filter')( products, { import_date: importDate } )

View File

@@ -1,4 +1,2 @@
angular.module("admin.indexUtils").controller "ColumnsCtrl", ($scope, Columns) ->
$scope.columns = Columns.columns
$scope.predicate = ""
$scope.reverse = false

View File

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

View File

@@ -9,4 +9,4 @@ angular.module("admin.indexUtils").factory 'Dereferencer', ->
dereferenceAttr: (array, attr, data)->
if array
for object in array
object[attr] = data[object[attr].id] unless object[attr] == null
object[attr] = data[object[attr].id] if object[attr]

View File

@@ -3,14 +3,18 @@ angular.module("admin.indexUtils").factory "PagedFetcher", (dataFetcher) ->
# 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) ->
fetch: (url, processData, onLastPageComplete) ->
dataFetcher(@urlForPage(url, 1)).then (data) =>
processData data
if data.pages > 1
for page in [2..data.pages]
dataFetcher(@urlForPage(url, page)).then (data) ->
lastPromise = dataFetcher(@urlForPage(url, page)).then (data) ->
processData data
onLastPageComplete && lastPromise.then onLastPageComplete
return
else
onLastPageComplete && onLastPageComplete()
urlForPage: (url, page) ->
url.replace("::page::", page)

View File

@@ -1,14 +1,16 @@
angular.module("admin.indexUtils").factory 'Panels', ->
new class Panels
panels: []
all: []
register: (ctrl, object, selected=null) ->
if ctrl? && object?
@panels.push { ctrl: ctrl, object: object, selected: selected }
existing = @panelFor(object)
newPanel = { ctrl: ctrl, object: object, selected: selected }
if existing then angular.extend(existing, newPanel) else @all.push(newPanel)
ctrl.select(selected) if selected?
toggle: (object, name, state=null) ->
panel = @findPanelByObject(object)
panel = @panelFor(object)
if panel.selected == name
@select(panel, null) unless state == "open"
else
@@ -18,5 +20,5 @@ angular.module("admin.indexUtils").factory 'Panels', ->
panel.selected = name
panel.ctrl.select(name)
findPanelByObject: (object) ->
(panel for panel in @panels when panel.object == object)[0]
panelFor: (object) ->
(@all.filter (panel) -> panel.object == object)[0]

View File

@@ -6,7 +6,7 @@ angular.module("admin.indexUtils").factory "pendingChanges", ($q, resources, Sta
add: (id, attr, change) =>
@pendingChanges["#{id}"] = {} unless @pendingChanges.hasOwnProperty("#{id}")
@pendingChanges["#{id}"]["#{attr}"] = change
StatusMessage.display('notice', "You have made #{@changeCount(@pendingChanges)} unsaved changes")
StatusMessage.display('notice', t('admin.unsaved_changes'))
removeAll: =>
@pendingChanges = {}

View File

@@ -1,11 +1,12 @@
angular.module("admin.indexUtils").factory 'RequestMonitor', ($q) ->
new class RequestMonitor
loadQueue: $q.when([])
loadId: 0
requestCount: 0
loading: false
load: (promise) ->
loadId = (@loadId += 1)
@requestCount += 1
@loading = true
@loadQueue = $q.all([@loadQueue, promise]).then =>
@loading = false if @loadId == loadId
@requestCount -= 1
@loading = false if @requestCount == 0

View File

@@ -0,0 +1,8 @@
angular.module("admin.indexUtils").factory 'SortOptions', ->
new class SortOptions
predicate: ""
reverse: true
toggle: (predicate) ->
@reverse = (@predicate == predicate) && !@reverse
@predicate = predicate

View File

@@ -1,15 +1,16 @@
angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout, $http, $q, StatusMessage, Columns, Dereferencer, Orders, LineItems, Enterprises, OrderCycles, VariantUnitManager, RequestMonitor) ->
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.confirmDelete = true
$scope.startDate = formatDate daysFromToday -7
$scope.endDate = formatDate daysFromToday 1
$scope.startDate = moment().startOf('day').subtract(7, 'days').format('YYYY-MM-DD')
$scope.endDate = moment().startOf('day').format('YYYY-MM-DD')
$scope.bulkActions = [ { name: t("admin.orders.bulk_management.actions_delete"), callback: 'deleteLineItems' } ]
$scope.selectedUnitsProduct = {}
$scope.selectedUnitsVariant = {}
$scope.sharedResource = false
$scope.columns = Columns.columns
$scope.sorting = SortOptions
$scope.confirmRefresh = ->
LineItems.allSaved() || confirm(t("unsaved_changes_warning"))
@@ -22,22 +23,34 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout,
$scope.refreshData = ->
unless !$scope.orderCycleFilter? || $scope.orderCycleFilter == 0
$scope.startDate = OrderCycles.byID[$scope.orderCycleFilter].first_order
$scope.endDate = OrderCycles.byID[$scope.orderCycleFilter].last_order
$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')
RequestMonitor.load $scope.orders = Orders.index("q[state_not_eq]": "canceled", "q[completed_at_not_null]": "true", "q[completed_at_gt]": "#{parseDate($scope.startDate)}", "q[completed_at_lt]": "#{parseDate($scope.endDate)}")
RequestMonitor.load $scope.lineItems = LineItems.index("q[order][state_not_eq]": "canceled", "q[order][completed_at_not_null]": "true", "q[order][completed_at_gt]": "#{parseDate($scope.startDate)}", "q[order][completed_at_lt]": "#{parseDate($scope.endDate)}")
formatted_start_date = moment($scope.startDate).format()
formatted_end_date = moment($scope.endDate).add(1,'day').format()
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
)
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
)
unless $scope.initialized
RequestMonitor.load $scope.distributors = Enterprises.index(action: "for_line_items", ams_prefix: "basic", "q[sells_in][]": ["own", "any"])
RequestMonitor.load $scope.orderCycles = OrderCycles.index(ams_prefix: "basic", as: "distributor", "q[orders_close_at_gt]": "#{daysFromToday(-90)}")
RequestMonitor.load $scope.suppliers = Enterprises.index(action: "for_line_items", ams_prefix: "basic", "q[is_primary_producer_eq]": "true")
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]).then ->
RequestMonitor.load $q.all([$scope.orders.$promise, $scope.distributors.$promise, $scope.orderCycles.$promise, $scope.suppliers.$promise, $scope.lineItems.$promise]).then ->
Dereferencer.dereferenceAttr $scope.orders, "distributor", Enterprises.byID
Dereferencer.dereferenceAttr $scope.orders, "order_cycle", OrderCycles.byID
RequestMonitor.load $q.all([$scope.orders.$promise, $scope.suppliers.$promise, $scope.lineItems.$promise]).then ->
Dereferencer.dereferenceAttr $scope.lineItems, "supplier", Enterprises.byID
Dereferencer.dereferenceAttr $scope.lineItems, "order", Orders.byID
$scope.bulk_order_form.$setPristine()
@@ -47,8 +60,6 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout,
$timeout ->
$scope.resetSelectFilters()
$scope.refreshData()
$scope.$watch 'bulk_order_form.$dirty', (newVal, oldVal) ->
if newVal == true
StatusMessage.display 'notice', t('js.unsaved_changes')
@@ -143,30 +154,4 @@ 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)
daysFromToday = (days) ->
now = new Date
now.setHours(0)
now.setMinutes(0)
now.setSeconds(0)
now.setDate( now.getDate() + days )
now
formatDate = (date) ->
year = date.getFullYear()
month = twoDigitNumber date.getMonth() + 1
day = twoDigitNumber date.getDate()
return year + "-" + month + "-" + day
formatTime = (date) ->
hours = twoDigitNumber date.getHours()
mins = twoDigitNumber date.getMinutes()
secs = twoDigitNumber date.getSeconds()
return hours + ":" + mins + ":" + secs
parseDate = (dateString) ->
new Date(Date.parse(dateString))
twoDigitNumber = (number) ->
twoDigits = "" + number
twoDigits = ("0" + number) if number < 10
twoDigits
$scope.refreshData()

View File

@@ -1,10 +1,11 @@
angular.module('admin.orderCycles')
.controller 'AdminCreateOrderCycleCtrl', ($scope, $filter, $window, OrderCycle, Enterprise, EnterpriseFee, ocInstance, StatusMessage) ->
.controller 'AdminCreateOrderCycleCtrl', ($scope, $filter, $window, OrderCycle, Enterprise, EnterpriseFee, Schedules, RequestMonitor, ocInstance, StatusMessage) ->
$scope.enterprises = Enterprise.index(coordinator_id: ocInstance.coordinator_id)
$scope.supplier_enterprises = Enterprise.producer_enterprises
$scope.distributor_enterprises = Enterprise.hub_enterprises
$scope.supplied_products = Enterprise.supplied_products
$scope.enterprise_fees = EnterpriseFee.index(coordinator_id: ocInstance.coordinator_id)
$scope.schedules = Schedules.index({enterprise_id: ocInstance.coordinator_id})
$scope.OrderCycle = OrderCycle
$scope.order_cycle = OrderCycle.new({ coordinator_id: ocInstance.coordinator_id})
@@ -18,7 +19,7 @@ angular.module('admin.orderCycles')
StatusMessage.setValidation(isValid)
$scope.loaded = ->
Enterprise.loaded && EnterpriseFee.loaded && OrderCycle.loaded
Enterprise.loaded && EnterpriseFee.loaded && OrderCycle.loaded && !RequestMonitor.loading
$scope.suppliedVariants = (enterprise_id) ->
Enterprise.suppliedVariants(enterprise_id)
@@ -89,4 +90,3 @@ angular.module('admin.orderCycles')
$scope.cancel = (destination) ->
$window.location = destination

View File

@@ -1,11 +1,12 @@
angular.module('admin.orderCycles')
.controller 'AdminEditOrderCycleCtrl', ($scope, $filter, $location, $window, OrderCycle, Enterprise, EnterpriseFee, StatusMessage) ->
.controller 'AdminEditOrderCycleCtrl', ($scope, $filter, $location, $window, OrderCycle, Enterprise, EnterpriseFee, StatusMessage, Schedules, RequestMonitor, ocInstance) ->
order_cycle_id = $location.absUrl().match(/\/admin\/order_cycles\/(\d+)/)[1]
$scope.enterprises = Enterprise.index(order_cycle_id: order_cycle_id)
$scope.supplier_enterprises = Enterprise.producer_enterprises
$scope.distributor_enterprises = Enterprise.hub_enterprises
$scope.supplied_products = Enterprise.supplied_products
$scope.enterprise_fees = EnterpriseFee.index(order_cycle_id: order_cycle_id)
$scope.schedules = Schedules.index({enterprise_id: ocInstance.coordinator_id})
$scope.OrderCycle = OrderCycle
$scope.order_cycle = OrderCycle.load(order_cycle_id)
@@ -19,7 +20,7 @@ angular.module('admin.orderCycles')
StatusMessage.setValidation(isValid)
$scope.loaded = ->
Enterprise.loaded && EnterpriseFee.loaded && OrderCycle.loaded
Enterprise.loaded && EnterpriseFee.loaded && OrderCycle.loaded && !RequestMonitor.loading
$scope.suppliedVariants = (enterprise_id) ->
Enterprise.suppliedVariants(enterprise_id)

View File

@@ -0,0 +1,49 @@
angular.module("admin.orderCycles").controller "OrderCyclesCtrl", ($scope, $q, Columns, StatusMessage, RequestMonitor, OrderCycles, Enterprises, Schedules, Dereferencer) ->
$scope.RequestMonitor = RequestMonitor
$scope.columns = Columns.columns
$scope.saveAll = -> OrderCycles.saveChanges($scope.order_cycles_form)
$scope.ordersCloseAtLimit = -31 # days
$scope.resetSelectFilters = ->
$scope.scheduleFilter = 0
$scope.involvingFilter = 0
$scope.query = ''
$scope.resetSelectFilters()
compileData = ->
for schedule in $scope.schedules
Dereferencer.dereference(schedule.order_cycles, OrderCycles.byID)
for orderCycle in $scope.orderCycles
coordinator = Enterprises.byID[orderCycle.coordinator.id]
orderCycle.coordinator = coordinator if coordinator?
Dereferencer.dereference(orderCycle.producers, Enterprises.byID)
Dereferencer.dereference(orderCycle.shops, Enterprises.byID)
Dereferencer.dereference(orderCycle.schedules, Schedules.byID)
orderCycle.involvedEnterpriseIDs = [orderCycle.coordinator.id]
orderCycle.producerNames = orderCycle.producers.map((producer) -> orderCycle.involvedEnterpriseIDs.push(producer.id); producer.name).join(", ")
orderCycle.shopNames = orderCycle.shops.map((shop) -> orderCycle.involvedEnterpriseIDs.push(shop.id); shop.name).join(", ")
# NOTE: this is using the Enterprises service from the admin.enterprises module
RequestMonitor.load ($scope.enterprises = Enterprises.index(action: "visible", ams_prefix: "basic")).$promise
$scope.schedules = Schedules.index()
$scope.orderCycles = OrderCycles.index(ams_prefix: "index", "q[orders_close_at_gt]": "#{daysFromToday($scope.ordersCloseAtLimit)}")
RequestMonitor.load $q.all([$scope.enterprises.$promise, $scope.schedules.$promise, $scope.orderCycles.$promise]).then -> compileData()
$scope.$watch 'order_cycles_form.$dirty', (newVal, oldVal) ->
StatusMessage.display 'notice', "You have unsaved changes" if newVal
$scope.showMore = (days) ->
$scope.ordersCloseAtLimit -= days
existingIDs = Object.keys(OrderCycles.byID)
orderCycles = OrderCycles.index(ams_prefix: "index", "q[orders_close_at_gt]": "#{daysFromToday($scope.ordersCloseAtLimit)}", "q[id_not_in][]": existingIDs)
orderCycles.$promise.then ->
$scope.orderCycles.push(orderCycle) for orderCycle in orderCycles
compileData()
daysFromToday = (days) ->
now = new Date
now.setHours(0)
now.setMinutes(0)
now.setSeconds(0)
now.setDate( now.getDate() + days )
now

View File

@@ -1,6 +1,7 @@
angular.module('admin.orderCycles').controller "AdminSimpleCreateOrderCycleCtrl", ($scope, $window, OrderCycle, Enterprise, EnterpriseFee, StatusMessage, ocInstance) ->
angular.module('admin.orderCycles').controller "AdminSimpleCreateOrderCycleCtrl", ($scope, $window, OrderCycle, Enterprise, EnterpriseFee, StatusMessage, Schedules, RequestMonitor, ocInstance) ->
$scope.StatusMessage = StatusMessage
$scope.OrderCycle = OrderCycle
$scope.schedules = Schedules.index({enterprise_id: ocInstance.coordinator_id})
$scope.order_cycle = OrderCycle.new {coordinator_id: ocInstance.coordinator_id}, =>
# TODO: make this a get method, which only fetches one enterprise
$scope.enterprises = Enterprise.index {coordinator_id: ocInstance.coordinator_id}, (enterprises) =>
@@ -26,7 +27,7 @@ angular.module('admin.orderCycles').controller "AdminSimpleCreateOrderCycleCtrl"
OrderCycle.order_cycle.coordinator_id = enterprise.id
$scope.loaded = ->
Enterprise.loaded && EnterpriseFee.loaded && OrderCycle.loaded
Enterprise.loaded && EnterpriseFee.loaded && OrderCycle.loaded && !RequestMonitor.loading
$scope.removeDistributionOfVariant = angular.noop

View File

@@ -1,10 +1,11 @@
angular.module('admin.orderCycles').controller "AdminSimpleEditOrderCycleCtrl", ($scope, $location, $window, OrderCycle, Enterprise, EnterpriseFee, StatusMessage) ->
angular.module('admin.orderCycles').controller "AdminSimpleEditOrderCycleCtrl", ($scope, $location, $window, OrderCycle, Enterprise, EnterpriseFee, Schedules, RequestMonitor, StatusMessage, ocInstance) ->
$scope.orderCycleId = ->
$location.absUrl().match(/\/admin\/order_cycles\/(\d+)/)[1]
$scope.StatusMessage = StatusMessage
$scope.enterprises = Enterprise.index(order_cycle_id: $scope.orderCycleId())
$scope.enterprise_fees = EnterpriseFee.index(order_cycle_id: $scope.orderCycleId())
$scope.schedules = Schedules.index({enterprise_id: ocInstance.coordinator_id})
$scope.OrderCycle = OrderCycle
$scope.order_cycle = OrderCycle.load $scope.orderCycleId(), (order_cycle) =>
$scope.init()
@@ -16,7 +17,7 @@ angular.module('admin.orderCycles').controller "AdminSimpleEditOrderCycleCtrl",
StatusMessage.setValidation(isValid)
$scope.loaded = ->
Enterprise.loaded && EnterpriseFee.loaded && OrderCycle.loaded
Enterprise.loaded && EnterpriseFee.loaded && OrderCycle.loaded && !RequestMonitor.loading
$scope.init = ->
$scope.outgoing_exchange = OrderCycle.order_cycle.outgoing_exchanges[0]

View File

@@ -0,0 +1,23 @@
angular.module("admin.orderCycles").directive "changeWarning", (ConfirmDialog) ->
restrict: "A"
scope:
orderCycle: '=changeWarning'
link: (scope, element, attrs) ->
acknowledged = false
cancel = 'admin.order_cycles.date_warning.cancel'
proceed = 'admin.order_cycles.date_warning.proceed'
msg = 'admin.order_cycles.date_warning.msg'
options = { cancel: t(cancel), confirm: t(proceed) }
isOpen = (orderCycle) ->
moment(orderCycle.orders_open_at, "YYYY-MM-DD HH:mm:SS Z").isBefore() &&
moment(orderCycle.orders_close_at, "YYYY-MM-DD HH:mm:SS Z").isAfter()
element.focus ->
count = scope.orderCycle.subscriptions_count
return if acknowledged
return unless isOpen(scope.orderCycle)
return if count < 1
ConfirmDialog.open('info', t(msg, n: count), options).then ->
acknowledged = true
element.siblings('img').trigger('click')

View File

@@ -0,0 +1,26 @@
angular.module("admin.orderCycles").directive 'orderCyclesSelector', ($timeout, OrderCycles) ->
restrict: 'C'
templateUrl: 'admin/order_cycles_selector.html'
link: (scope, element, attr) ->
scope.orderCycles = OrderCycles.all.filter (oc) -> oc.viewing_as_coordinator
$timeout ->
scope.selections =
available: scope.availableOrderCycles[0]
selected: scope.selectedOrderCycles[0]
scope.add = (orderCycle) ->
orderCycle ?= scope.selections.available
index = scope.availableOrderCycles.indexOf(orderCycle)
if index > -1
scope.selectedOrderCycles.push orderCycle
scope.selections.available = scope.availableOrderCycles[index+1] || scope.availableOrderCycles[index-1]
scope.selections.selected = orderCycle
scope.remove = (orderCycle) ->
orderCycle ?= scope.selections.selected
index = scope.selectedOrderCycles.indexOf(orderCycle)
if index > -1
scope.selectedOrderCycles.splice(index, 1)
scope.selections.selected = scope.selectedOrderCycles[index] || scope.selectedOrderCycles[index-1]
scope.selections.available = orderCycle

View File

@@ -0,0 +1,63 @@
angular.module("admin.orderCycles").directive 'scheduleDialog', ($window, $compile, $injector, $templateCache, DialogDefaults, OrderCycles, Schedules) ->
restrict: 'A'
scope:
scheduleId: '@'
showMore: '&'
link: (scope, element, attr) ->
# Link opening of dialog to click event on element
element.bind 'click', (e) ->
existing = Schedules.byID[scope.scheduleId]
scope.schedule =
id: existing?.id
name: existing?.name || ''
order_cycle_ids: existing?.order_cycle_ids || []
scope.selectedOrderCycles = []
scope.selectedOrderCycles.push orderCycle for orderCycle in (existing?.order_cycles || [])
scope.submitted = false
scope.errors = []
# Compile modal template
scope.template = $compile($templateCache.get('admin/schedule_dialog.html'))(scope)
# Set Dialog options
settings = angular.copy(DialogDefaults)
scope.template.dialog(angular.extend(settings,{width: $window.innerWidth * 0.6}))
scope.template.dialog(close: -> scope.template.remove())
scope.template.dialog('open')
scope.close = ->
scope.template.dialog('close')
return
scope.delete = ->
if confirm(t('are_you_sure'))
Schedules.remove(scope.schedule).$promise.then (data) ->
scope.close()
, (response) ->
errors = response.data.errors
if errors?
scope.errors.push errors[0]
else
scope.errors.push "Could not delete schedule: #{scope.schedule.name}"
scope.loadMore = ->
scope.showMore().then ->
scope.availableOrderCycles = (orderCycle for id, orderCycle of OrderCycles.byID when orderCycle.id not in scope.schedule.order_cycle_ids)
scope.submit = ->
scope.schedule_form.$setPristine()
scope.submitted = true
scope.errors = []
return scope.errors.push(t('js.admin.order_cycles.schedules.no_order_cycles_error')) unless scope.selectedOrderCycles.length > 0
scope.schedule.order_cycle_ids = scope.selectedOrderCycles.map (oc) -> oc.id
if scope.schedule_form.$valid
method = if scope.schedule.id? then Schedules.update else Schedules.add
method(scope.schedule).$promise.then (data) ->
if data.id
scope.submitted = false
scope.template.dialog('close')
, (response) ->
if response.data.errors
scope.errors.push(error) for error in response.data.errors
else
scope.errors.push("Sorry! Could not create '#{scope.name}'")
return

View File

@@ -0,0 +1,15 @@
angular.module("admin.orderCycles").directive 'scheduleList', (RequestMonitor, Schedules) ->
restrict: 'E'
scope:
orderCycle: '='
template: "<div><span ng-repeat='schedule in schedules'>{{ schedule.name + ($last ? '' : ', ')}}</span></div>"
link: (scope, element, attr) ->
scope.schedules = []
scope.$watchCollection 'orderCycle.schedule_ids', (newValue, oldValue) ->
return unless newValue? && RequestMonitor.loadId > 0 # Request for schedules needs to have been sent
scope.schedules = []
RequestMonitor.loadQueue.then ->
for id in scope.orderCycle.schedule_ids
schedule = Schedules.byID[id]
scope.schedules.push schedule if schedule?

View File

@@ -0,0 +1,7 @@
angular.module("admin.orderCycles").filter "available", ($filter) ->
return (orderCycles, selectedOrderCycles) ->
return orderCycles unless selectedOrderCycles?.length > 0
$filter('filter')(orderCycles, (orderCycle) ->
(selectedOrderCycles.indexOf(orderCycle) == -1) &&
(orderCycle.coordinator.id == selectedOrderCycles[0].coordinator.id)
)

View File

@@ -0,0 +1,6 @@
angular.module("admin.orderCycles").filter "involving", ($filter) ->
return (orderCycles, enterpriseID) ->
return orderCycles if enterpriseID == 0
$filter('filter')(orderCycles, (orderCycle) ->
enterpriseID in orderCycle.involvedEnterpriseIDs
)

View File

@@ -0,0 +1,6 @@
angular.module("admin.orderCycles").filter "schedule", ($filter) ->
return (orderCycles, scheduleID) ->
return orderCycles if scheduleID == 0
$filter('filter')(orderCycles, (orderCycle) ->
scheduleID in orderCycle.schedules.map (oc) -> oc.id
)

View File

@@ -1,32 +0,0 @@
angular.module('admin.orderCycles', ['admin.utils', 'admin.indexUtils', 'ngTagsInput'])
.config ($httpProvider) ->
$httpProvider.defaults.headers.common['X-CSRF-Token'] = $('meta[name=csrf-token]').attr('content')
.directive 'datetimepicker', ($parse) ->
(scope, element, attrs) ->
# using $parse instead of scope[attrs.datetimepicker] for cases
# where attrs.datetimepicker is 'foo.bar.lol'
$(element).datetimepicker
dateFormat: 'yy-mm-dd'
timeFormat: 'HH:mm:ss'
showOn: "button"
buttonImage: "<%= asset_path 'datepicker/cal.gif' %>"
buttonImageOnly: true
stepMinute: 15
onSelect: (dateText, inst) ->
scope.$apply ->
parsed = $parse(attrs.datetimepicker)
parsed.assign(scope, dateText)
.directive 'ofnOnChange', ->
(scope, element, attrs) ->
element.bind 'change', ->
scope.$apply(attrs.ofnOnChange)
.directive 'ofnSyncDistributions', ->
(scope, element, attrs) ->
element.bind 'change', ->
if !$(this).is(':checked')
scope.$apply ->
scope.removeDistributionOfVariant(attrs.ofnSyncDistributions)

View File

@@ -0,0 +1,39 @@
angular.module('admin.orderCycles', ['ngTagsInput', 'admin.indexUtils', 'admin.enterprises'])
.config ($httpProvider) ->
$httpProvider.defaults.headers.common['X-CSRF-Token'] = $('meta[name=csrf-token]').attr('content')
.directive 'datetimepicker', ($timeout, $parse) ->
require: "ngModel"
link: (scope, element, attrs, ngModel) ->
$timeout ->
# using $parse instead of scope[attrs.datetimepicker] for cases
# where attrs.datetimepicker is 'foo.bar.lol'
$(element).datetimepicker
dateFormat: 'yy-mm-dd'
timeFormat: 'HH:mm'
showOn: 'button'
controlType: 'select'
oneLine: true
buttonImage: "<%= asset_path 'datepicker/cal.gif' %>"
buttonImageOnly: true
stepMinute: 15
onSelect: (dateText, inst) ->
scope.$apply(->
element.val(dateText)
parsed = $parse(attrs.datetimepicker)
parsed.assign(scope, dateText)
)
.directive 'ofnOnChange', ->
(scope, element, attrs) ->
element.bind 'change', ->
scope.$apply(attrs.ofnOnChange)
.directive 'ofnSyncDistributions', ->
(scope, element, attrs) ->
element.bind 'change', ->
if !$(this).is(':checked')
scope.$apply ->
scope.removeDistributionOfVariant(attrs.ofnSyncDistributions)

View File

@@ -151,23 +151,28 @@ angular.module('admin.orderCycles').factory 'OrderCycle', ($resource, $window, S
return unless @confirmNoDistributors()
oc = new OrderCycleResource({order_cycle: this.dataForSubmit()})
oc.$create (data) ->
if data['success']
$window.location = destination
$window.location = destination
, (response) ->
if response.data.errors?
StatusMessage.display('failure', response.data.errors[0])
else
console.log('Failed to create order cycle')
StatusMessage.display('failure', t('js.order_cycles.create_failure'))
update: (destination, form) ->
return unless @confirmNoDistributors()
oc = new OrderCycleResource({order_cycle: this.dataForSubmit()})
oc.$update {order_cycle_id: this.order_cycle.id, reloading: (if destination? then 1 else 0)}, (data) =>
if data['success']
form.$setPristine() if form
if destination?
$window.location = destination
else
StatusMessage.display 'success', t('js.order_cycles.update_success')
form.$setPristine() if form
if destination?
$window.location = destination
else
console.log('Failed to update order cycle')
StatusMessage.display 'success', t('js.order_cycles.update_success')
, (response) ->
if response.data.errors?
StatusMessage.display('failure', response.data.errors[0])
else
StatusMessage.display('failure', t('js.order_cycles.update_failure'))
confirmNoDistributors: ->
if @order_cycle.outgoing_exchanges.length == 0
@@ -204,6 +209,7 @@ angular.module('admin.orderCycles').factory 'OrderCycle', ($resource, $window, S
delete order_cycle.editable_variants_for_incoming_exchanges
delete order_cycle.editable_variants_for_outgoing_exchanges
delete order_cycle.visible_variants_for_outgoing_exchanges
delete order_cycle.subscriptions_count
order_cycle
removeInactiveExchanges: (order_cycle) ->

View File

@@ -0,0 +1,32 @@
angular.module("admin.orders").controller "bulkInvoiceCtrl", ($scope, $http, $timeout) ->
$scope.createBulkInvoice = ->
$scope.invoice_id = null
$scope.poll = 1
$scope.loading = true
$scope.message = null
$scope.error = null
$scope.poll_wait = 5 # 5 Seconds between each check
$scope.poll_retries = 80 # Maximum checks before stopping
$http.post('/admin/orders/invoices', {order_ids: $scope.selected_orders}).success (data) ->
$scope.invoice_id = data
$scope.pollBulkInvoice()
$scope.pollBulkInvoice = ->
$timeout($scope.nextPoll, $scope.poll_wait * 1000)
$scope.nextPoll = ->
$http.get('/admin/orders/invoices/'+$scope.invoice_id+'/poll').success (data) ->
$scope.loading = false
$scope.message = t('js.admin.orders.index.bulk_invoice_created')
.error (data) ->
$scope.poll++
if $scope.poll > $scope.poll_retries
$scope.loading = false
$scope.error = t('js.admin.orders.index.bulk_invoice_failed')
return
$scope.pollBulkInvoice()

View File

@@ -0,0 +1,26 @@
angular.module("admin.orders").controller "orderCtrl", ($scope, shops, orderCycles, $compile, $attrs, Orders) ->
$scope.$compile = $compile
$scope.shops = shops
$scope.orderCycles = orderCycles
$scope.distributor_id = parseInt($attrs.ofnDistributorId)
$scope.order_cycle_id = parseInt($attrs.ofnOrderCycleId)
$scope.validOrderCycle = (oc) ->
$scope.orderCycleHasDistributor oc, parseInt($scope.distributor_id)
$scope.distributorHasOrderCycles = (distributor) ->
(oc for oc in $scope.orderCycles when @orderCycleHasDistributor(oc, distributor.id)).length > 0
$scope.orderCycleHasDistributor = (oc, distributor_id) ->
distributor_ids = (d.id for d in oc.distributors)
distributor_ids.indexOf(distributor_id) != -1
$scope.distributionChosen = ->
$scope.distributor_id && $scope.order_cycle_id
for oc in $scope.orderCycles
oc.name_and_status = "#{oc.name} (#{oc.status})"
for shop in $scope.shops
shop.disabled = !$scope.distributorHasOrderCycles(shop)

View File

@@ -1,26 +1,74 @@
angular.module("admin.orders").controller "ordersCtrl", ($scope, $compile, $attrs, shops, orderCycles) ->
$scope.$compile = $compile
$scope.shops = shops
$scope.orderCycles = orderCycles
angular.module("admin.orders").controller "ordersCtrl", ($scope, RequestMonitor, Orders, SortOptions, $window, $filter) ->
$scope.RequestMonitor = RequestMonitor
$scope.pagination = Orders.pagination
$scope.orders = Orders.all
$scope.sortOptions = SortOptions
$scope.per_page_options = [
{id: 15, name: t('js.admin.orders.index.per_page', results: 15)},
{id: 50, name: t('js.admin.orders.index.per_page', results: 50)},
{id: 100, name: t('js.admin.orders.index.per_page', results: 100)}
]
$scope.selected_orders = []
$scope.checkboxes = {}
$scope.selected = false
$scope.select_all = false
$scope.poll = 0
$scope.distributor_id = parseInt($attrs.ofnDistributorId)
$scope.order_cycle_id = parseInt($attrs.ofnOrderCycleId)
$scope.initialise = ->
$scope.per_page = 15
$scope.q = {
completed_at_not_null: true
}
$scope.fetchResults()
$scope.validOrderCycle = (oc) ->
$scope.orderCycleHasDistributor oc, parseInt($scope.distributor_id)
$scope.fetchResults = (page=1) ->
$scope.resetSelected()
params = {
'q[completed_at_lt]': $scope['q']['completed_at_lt'],
'q[completed_at_gt]': $scope['q']['completed_at_gt'],
'q[state_eq]': $scope['q']['state_eq'],
'q[number_cont]': $scope['q']['number_cont'],
'q[email_cont]': $scope['q']['email_cont'],
'q[bill_address_firstname_start]': $scope['q']['bill_address_firstname_start'],
'q[bill_address_lastname_start]': $scope['q']['bill_address_lastname_start'],
# Set default checkbox values to null. See: https://github.com/openfoodfoundation/openfoodnetwork/pull/3076#issuecomment-440010498
'q[completed_at_not_null]': $scope['q']['completed_at_not_null'] || null,
'q[distributor_id_in]': $scope['q']['distributor_id_in'],
'q[order_cycle_id_in]': $scope['q']['order_cycle_id_in'],
'q[order_cycle_id_in]': $scope['q']['order_cycle_id_in'],
'q[s]': $scope.sorting || 'completed_at desc',
per_page: $scope.per_page,
page: page
}
RequestMonitor.load(Orders.index(params).$promise)
$scope.distributorHasOrderCycles = (distributor) ->
(oc for oc in orderCycles when @orderCycleHasDistributor(oc, distributor.id)).length > 0
$scope.resetSelected = ->
$scope.selected_orders.length = 0
$scope.selected = false
$scope.select_all = false
$scope.checkboxes = {}
$scope.orderCycleHasDistributor = (oc, distributor_id) ->
distributor_ids = (d.id for d in oc.distributors)
distributor_ids.indexOf(distributor_id) != -1
$scope.toggleSelection = (id) ->
index = $scope.selected_orders.indexOf(id)
$scope.distributionChosen = ->
$scope.distributor_id && $scope.order_cycle_id
if index == -1
$scope.selected_orders.push(id)
else
$scope.selected_orders.splice(index, 1)
for oc in $scope.orderCycles
oc.name_and_status = "#{oc.name} (#{oc.status})"
$scope.toggleAll = ->
$scope.selected_orders.length = 0
$scope.orders.forEach (order) ->
$scope.checkboxes[order.id] = $scope.select_all
$scope.selected_orders.push order.id if $scope.select_all
for shop in $scope.shops
shop.disabled = !$scope.distributorHasOrderCycles(shop)
$scope.$watch 'sortOptions', (sort) ->
if sort && sort.predicate != ""
$scope.sorting = sort.predicate + ' desc' if sort.reverse
$scope.sorting = sort.predicate + ' asc' if !sort.reverse
$scope.fetchResults()
, true
$scope.changePage = (newPage) ->
$scope.page = newPage
$scope.fetchResults(newPage)

View File

@@ -1,5 +1,7 @@
angular.module("admin.orders").directive 'customerSearchOverride', ->
restrict: 'C'
scope:
distributorId: '@'
link: (scope, element, attr) ->
formatCustomerResult = (customer) ->
customerTemplate
@@ -9,13 +11,14 @@ angular.module("admin.orders").directive 'customerSearchOverride', ->
element.select2
placeholder: Spree.translations.choose_a_customer
minimumInputLength: 3
ajax:
url: '/admin/search/customers.json'
datatype: 'json'
data: (term, page) ->
{
q: term
distributor_id: $('#distributor_id').val() # modified
distributor_id: scope.distributorId # modified
}
results: (data, page) ->
{ results: data }
@@ -53,7 +56,4 @@ angular.module("admin.orders").directive 'customerSearchOverride', ->
return
$('#order_email').val customer.email
$('#user_id').val customer.user_id # modified
$('#guest_checkout_true').prop 'checked', false
$('#guest_checkout_false').prop 'checked', true
$('#guest_checkout_false').prop 'disabled', false
customer.email

View File

@@ -0,0 +1,5 @@
angular.module("admin.orders").directive "invoicesModal", ($modal) ->
restrict: 'C'
link: (scope, elem, attrs, ctrl) ->
elem.on "click", (ev) =>
scope.uploadModal = $modal.open(templateUrl: 'admin/modals/bulk_invoice.html', controller: ctrl, scope: scope, windowClass: 'simple-modal')

View File

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

View File

@@ -0,0 +1,18 @@
angular.module("admin.paymentMethods").controller "StripeController", ($scope, $http, shops) ->
$scope.shops = shops
$scope.stripe_account = {}
$scope.$watch "paymentMethod.preferred_enterprise_id", (newID, oldID) ->
return unless newID?
$scope.stripe_account = {}
$http.get("/admin/stripe_accounts/status.json?enterprise_id=#{newID}").success (data) ->
angular.extend($scope.stripe_account, data)
.error (response) ->
$scope.stripe_account.status = "request_failed"
$scope.current_enterprise_stripe_path = ->
return unless $scope.paymentMethod.preferred_enterprise_id?
permalink = shops.filter((shop) ->
shop.id == $scope.paymentMethod.preferred_enterprise_id
)[0].permalink
"/admin/enterprises/#{permalink}/edit#/payment_methods"

View File

@@ -0,0 +1,10 @@
angular.module("admin.payments").controller "PaymentCtrl", ($scope, Payment, StatusMessage) ->
$scope.form_data = Payment.form_data
$scope.submitted = false
$scope.StatusMessage = StatusMessage
$scope.submitPayment = () ->
return false if $scope.submitted
$scope.submitted = true
StatusMessage.display 'progress', t("spree.admin.payments.source_forms.stripe.submitting_payment")
Payment.purchase()

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