mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-18 07:51:55 +03:00
0d7944861c
no issue Free and premium newsletters were the other way around in the demo-data. This was a good opportunity to stop the email table importer from relying on the newsletter name, and use the order alone.
34 lines
1.1 KiB
JavaScript
34 lines
1.1 KiB
JavaScript
const TableImporter = require('./base');
|
|
const {blogStartDate} = require('../utils/blog-info');
|
|
const {faker} = require('@faker-js/faker');
|
|
const {slugify} = require('@tryghost/string');
|
|
|
|
class NewslettersImporter extends TableImporter {
|
|
constructor(knex) {
|
|
super('newsletters', knex);
|
|
this.sortOrder = 0;
|
|
this.names = ['Regular premium', 'Occasional freebie'];
|
|
}
|
|
|
|
generate() {
|
|
const name = this.names.shift();
|
|
const sortOrder = this.sortOrder;
|
|
this.sortOrder = this.sortOrder + 1;
|
|
const weekAfter = new Date(blogStartDate);
|
|
weekAfter.setDate(weekAfter.getDate() + 7);
|
|
return {
|
|
id: faker.database.mongodbObjectId(),
|
|
uuid: faker.datatype.uuid(),
|
|
name: name,
|
|
slug: `${slugify(name)}-${faker.random.numeric(3)}`,
|
|
sender_reply_to: 'hello@example.com',
|
|
status: 'active',
|
|
subscribe_on_signup: faker.datatype.boolean(),
|
|
sort_order: sortOrder,
|
|
created_at: faker.date.between(blogStartDate, weekAfter)
|
|
};
|
|
}
|
|
}
|
|
|
|
module.exports = NewslettersImporter;
|