0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-01-06 22:40:14 -05:00

Renamed settings table keys (#11946)

refs https://github.com/TryGhost/Ghost/issues/10318

- Adds following renames to settings table keys:
  'default_locale' -> 'lang'
  'active_timezone' -> 'timezone'
  'ghost_head' -> 'codeinjection_head'
  'ghost_foot' -> 'codeinjection_foot'
  'brand.publicationColor' -> 'accent_color'
- The renames are done to match revised naming conventions and naming
exposed through APIs
This commit is contained in:
Naz 2020-06-23 19:09:12 +12:00 committed by GitHub
parent bdd8049e06
commit d8cdeb6d01
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -0,0 +1,81 @@
const logging = require('../../../../../shared/logging');
const renameMapping = [{
from: 'default_locale',
to: 'lang'
}, {
from: 'active_timezone',
to: 'timezone'
}, {
from: 'ghost_head',
to: 'codeinjection_head'
}, {
from: 'ghost_foot',
to: 'codeinjection_foot'
}];
module.exports = {
config: {
transaction: true
},
async up(options) {
await Promise.map(renameMapping, async (renameMap) => {
logging.info(`Renaming ${renameMap.from} to ${renameMap.to}`);
return await options
.transacting('settings')
.where('key', renameMap.from)
.update({
key: renameMap.to
});
});
const brandResult = await options
.transacting('settings')
.where('key', 'brand')
.select('value');
const brand = JSON.parse(brandResult[0].value);
logging.info(`Updating brand.primaryColor in settings to accent_color with value ${brand.primaryColor}`);
return await options
.transacting('settings')
.where('key', 'brand')
.update('key', 'accent_color')
.update('value', brand.primaryColor);
},
async down(options) {
await Promise.map(renameMapping, async (renameMap) => {
logging.info(`Renaming ${renameMap.to} to ${renameMap.from}`);
return await options
.transacting('settings')
.where('key', renameMap.to)
.update({
key: renameMap.from
});
});
let accentColor = await options
.transacting('settings')
.where('key', 'accent_color')
.select('value');
const brand = accentColor[0].value;
logging.info(`Updating accent_color in settings to brand.primaryColor with value ${brand.primaryColor}`);
return await options
.transacting('settings')
.where('key', 'accent_color')
.update('key', 'brand')
.update('value', JSON.stringify({
brand: {
primaryColor: ''
}
}));
}
};