Commit Graph

375 Commits

Author SHA1 Message Date
luisramos0
079d4e0bf5 Fix variant_overrides permissions for overrides that belong to the supplier herself 2018-10-31 11:26:15 +00: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
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
luisramos0
d375bb8c55 Migration: Revoke variant overrides without permissions 2018-10-20 12:32:55 +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
Maikel Linke
af1ac333df Create MailMethod before User when seeding 2018-09-27 13:33:09 +10:00
luisramos0
524f9af148 Drop unused db column line_items.shipping_method_name 2018-09-19 11:38:19 +01: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
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
Matt-Yorkley
23cbcda0c3 Allow preferred_mails_from and preferred_mail_bcc to be set from configs 2018-07-18 15:43:02 +01:00
Rob Harrington
4863f2b5b4 Remove unrequired credit_card_id field from subscriptions table 2018-07-05 19:26:12 +10:00
Rob Harrington
29922d4be9 Add allow_charges field to Customer model 2018-06-22 15:39:46 +10:00
Rob Harrington
3619ec0dc8 Add is_default attribute to Spree::CreditCard model 2018-06-08 12:01:10 +10:00
Matt-Yorkley
e362c2d867 PI timestamps 2018-05-26 19:34:19 +01: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
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 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
Rob Harrington
9840467b8a Remove obsolete subscription fields from order cycles table 2018-03-16 14:55:22 +11: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 Perez
c19c22cb17 Apply couple simple tweaks to seeds.rb 2018-03-09 13:20:35 +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
Rob Harrington
ad391c73ab Add migration to add fee estimate fields to subscriptions table 2018-03-02 10:11:26 +11: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
Rob Harrington
eb53df8238 Rename 'standing_line_items' table to 'subscription_line_items' 2018-02-09 14:44:14 +11:00
Rob Harrington
b258c032cc Rename 'standing_orders' table to 'subscriptions' 2018-02-09 14:44:12 +11:00
Rob Harrington
3ac2ac34ed Add credit_card_id to StandingOrder model 2018-02-09 14:44:03 +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
e7b8648792 Adding standing orders feature toggle column to enterprises table 2018-02-09 14:43:57 +11:00
Rob Harrington
f57cae9124 Removing null: false contraint on order_id for ProxyOrder 2018-02-09 14:43:55 +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
2a03477597 Adding standing_orders_confirmed_at flag to order_cycles 2018-02-09 14:43:54 +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
284103b6b6 Adding canceled_at column to standing_orders table 2018-02-09 14:43:50 +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
140d62939a Adding processing marker column standing_orders_placed_at to order cycles 2018-02-09 14:43:39 +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
b701ca43f4 WIP: adding shiping and billing address to StandingOrder model 2018-02-09 14:43:37 +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
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
Matt-Yorkley
ee08dcfeb4 Use owner as contact if user record doesn't exist 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
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
9ccb3ee80b Add receives_notifications flag to enterprise_roles 2018-02-07 10:41:52 +11:00
Matt-Yorkley
22eae753fe Remove enterprise confirmations 2018-02-07 10:41:52 +11:00