mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-11-28 05:37:34 +03:00
Populated {monthly,yearly}_price_id from settings
refs https://github.com/TryGhost/Team/issues/711 As this migration relies on the settings being populated, it cannot be a standard migration in Ghost core, as the settings are populated by these code migrations.
This commit is contained in:
parent
0c66563df7
commit
f660405937
@ -163,6 +163,10 @@ module.exports = function MembersApi({
|
|||||||
return stripeMigrations.populateMembersMonthlyPriceIdSettings();
|
return stripeMigrations.populateMembersMonthlyPriceIdSettings();
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
return stripeMigrations.populateMembersYearlyPriceIdSettings();
|
return stripeMigrations.populateMembersYearlyPriceIdSettings();
|
||||||
|
}).then(() => {
|
||||||
|
return stripeMigrations.populateDefaultProductMonthlyPriceId();
|
||||||
|
}).then(() => {
|
||||||
|
return stripeMigrations.populateDefaultProductYearlyPriceId();
|
||||||
}),
|
}),
|
||||||
stripeWebhookService.configure({
|
stripeWebhookService.configure({
|
||||||
webhookSecret: process.env.WEBHOOK_SECRET,
|
webhookSecret: process.env.WEBHOOK_SECRET,
|
||||||
|
@ -378,4 +378,36 @@ module.exports = class StripeMigrations {
|
|||||||
|
|
||||||
await this._Settings.edit({key: 'members_yearly_price_id', value: yearlyPrice.id}, {id: yearlyPriceId.id});
|
await this._Settings.edit({key: 'members_yearly_price_id', value: yearlyPrice.id}, {id: yearlyPriceId.id});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async populateDefaultProductMonthlyPriceId() {
|
||||||
|
this._logging.info('Migrating members_monthly_price_id setting to monthly_price_id column');
|
||||||
|
const productsPage = await this._Product.findPage({limit: 1});
|
||||||
|
const defaultProduct = productsPage.data[0];
|
||||||
|
|
||||||
|
if (defaultProduct.get('monthly_price_id')) {
|
||||||
|
this._logging.warn('Skipping migration, monthly_price_id already set');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const monthlyPriceIdSetting = await this._Settings.findOne({key: 'members_monthly_price_id'});
|
||||||
|
const monthlyPriceId = monthlyPriceIdSetting.get('value');
|
||||||
|
|
||||||
|
await this._Product.edit({monthly_price_id: monthlyPriceId}, {id: defaultProduct.id});
|
||||||
|
}
|
||||||
|
|
||||||
|
async populateDefaultProductYearlyPriceId() {
|
||||||
|
this._logging.info('Migrating members_yearly_price_id setting to yearly_price_id column');
|
||||||
|
const productsPage = await this._Product.findPage({limit: 1});
|
||||||
|
const defaultProduct = productsPage.data[0];
|
||||||
|
|
||||||
|
if (defaultProduct.get('yearly_price_id')) {
|
||||||
|
this._logging.warn('Skipping migration, yearly_price_id already set');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const yearlyPriceIdSetting = await this._Settings.findOne({key: 'members_yearly_price_id'});
|
||||||
|
const yearlyPriceId = yearlyPriceIdSetting.get('value');
|
||||||
|
|
||||||
|
await this._Product.edit({yearly_price_id: yearlyPriceId}, {id: defaultProduct.id});
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user