Commit Graph

317 Commits

Author SHA1 Message Date
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
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
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
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
Kristina Lim
4c0c0bbfd0 Simplify stock configuration in existing variant overrides 2018-12-07 14:40:15 +08: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
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
b7ffde795a Add migration to update calculator class name of weight calculators 2018-11-07 09:54:53 +00:00
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
luisramos0
524f9af148 Drop unused db column line_items.shipping_method_name 2018-09-19 11:38:19 +01: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
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
Rob Harrington
9840467b8a Remove obsolete subscription fields from order cycles table 2018-03-16 14:55:22 +11: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