Skip to content
Snippets Groups Projects
Commit 7bba7224 authored by Alexandros Georgantas's avatar Alexandros Georgantas
Browse files

fix(app): seed script fixed

parent d1c12e7c
No related branches found
No related tags found
1 merge request!17Cypress
const logger = require('@pubsweet/logger') const logger = require('@pubsweet/logger')
const { editoriaDataModel } = require('editoria-data-model') const { editoriaDataModel } = require('editoria-data-model')
const { TeamMember } = require('@pubsweet/models')
const keys = require('lodash/keys') const keys = require('lodash/keys')
const map = require('lodash/map') const map = require('lodash/map')
const pick = require('lodash/pick')
const { models } = editoriaDataModel const { models } = editoriaDataModel
const config = require('config') const config = require('config')
...@@ -16,9 +16,6 @@ const { ...@@ -16,9 +16,6 @@ const {
BookCollectionTranslation, BookCollectionTranslation,
} = models } = models
console.log('models', models)
// const { setupDb } = require('@pubsweet/db-manager')
const createBooksWithUsersAndTeams = async () => { const createBooksWithUsersAndTeams = async () => {
try { try {
const collections = await BookCollection.all() const collections = await BookCollection.all()
...@@ -43,7 +40,6 @@ const createBooksWithUsersAndTeams = async () => { ...@@ -43,7 +40,6 @@ const createBooksWithUsersAndTeams = async () => {
) )
let copyEditorUser = await User.findByUsername('copyEditor') let copyEditorUser = await User.findByUsername('copyEditor')
if (!authorUser) { if (!authorUser) {
console.log('here atuh')
authorUser = await new User({ authorUser = await new User({
username: 'author', username: 'author',
email: 'author@example.com', email: 'author@example.com',
...@@ -54,7 +50,6 @@ const createBooksWithUsersAndTeams = async () => { ...@@ -54,7 +50,6 @@ const createBooksWithUsersAndTeams = async () => {
}).save() }).save()
} }
if (!productionEditorUser) { if (!productionEditorUser) {
console.log('here atuh')
productionEditorUser = await new User({ productionEditorUser = await new User({
username: 'productionEditor', username: 'productionEditor',
email: 'productionEditorUser@example.com', email: 'productionEditorUser@example.com',
...@@ -91,29 +86,18 @@ const createBooksWithUsersAndTeams = async () => { ...@@ -91,29 +86,18 @@ const createBooksWithUsersAndTeams = async () => {
deleted: false, deleted: false,
global: true, global: true,
}).save() }).save()
const userMember = pick(globalProductionEditorUser, [ await new TeamMember({
'id', userId: globalProductionEditorUser.id,
'email', teamId: newTeam.id,
'username', }).save()
'admin',
'type',
])
const member = { members: [{ user: [userMember] }] }
globalTeam = await Team.query().patchAndFetchById(newTeam.id, member)
} else { } else {
const tempGlobal = globalTeams[0] const tempGlobal = globalTeams[0]
console.log('here', tempGlobal)
if (tempGlobal.members === undefined) { if (tempGlobal.members === undefined) {
const userMember = pick(globalProductionEditorUser, [ await new TeamMember({
'id', userId: globalProductionEditorUser.id,
'email', teamId: tempGlobal.id,
'username', }).save()
'admin',
'type',
])
const member = { members: [{ user: [userMember] }] }
globalTeam = await Team.query().patchAndFetchById(tempGlobal.id, member)
console.log('globallllll', globalTeam)
} else { } else {
globalTeam = globalTeams[0] globalTeam = globalTeams[0]
} }
...@@ -137,22 +121,18 @@ const createBooksWithUsersAndTeams = async () => { ...@@ -137,22 +121,18 @@ const createBooksWithUsersAndTeams = async () => {
await Promise.all( await Promise.all(
map(roles, async role => { map(roles, async role => {
if (role === 'author') { if (role === 'author') {
const userMember = pick(authorUser, [ const newTeam = await new Team({
'id',
'email',
'username',
'admin',
'type',
])
await new Team({
name: config.authsome.teams[role].name, name: config.authsome.teams[role].name,
objectId: authorBook.id, objectId: authorBook.id,
objectType: 'book', objectType: 'book',
role, role,
members: [{ user: [userMember] }],
deleted: false, deleted: false,
global: false, global: false,
}).save() }).save()
await new TeamMember({
userId: authorUser.id,
teamId: newTeam.id,
}).save()
} else { } else {
await new Team({ await new Team({
name: config.authsome.teams[role].name, name: config.authsome.teams[role].name,
...@@ -177,22 +157,18 @@ const createBooksWithUsersAndTeams = async () => { ...@@ -177,22 +157,18 @@ const createBooksWithUsersAndTeams = async () => {
await Promise.all( await Promise.all(
map(roles, async role => { map(roles, async role => {
if (role === 'productionEditor') { if (role === 'productionEditor') {
const userMember = pick(productionEditorUser, [ const newTeam = await new Team({
'id',
'email',
'username',
'admin',
'type',
])
await new Team({
name: config.authsome.teams[role].name, name: config.authsome.teams[role].name,
objectId: productionEditorBook.id, objectId: productionEditorBook.id,
members: [{ user: [userMember] }],
objectType: 'book', objectType: 'book',
role, role,
deleted: false, deleted: false,
global: false, global: false,
}).save() }).save()
await new TeamMember({
userId: productionEditorUser.id,
teamId: newTeam.id,
}).save()
} else { } else {
await new Team({ await new Team({
name: config.authsome.teams[role].name, name: config.authsome.teams[role].name,
...@@ -218,22 +194,18 @@ const createBooksWithUsersAndTeams = async () => { ...@@ -218,22 +194,18 @@ const createBooksWithUsersAndTeams = async () => {
await Promise.all( await Promise.all(
map(roles, async role => { map(roles, async role => {
if (role === 'copyEditor') { if (role === 'copyEditor') {
const userMember = pick(copyEditorUser, [ const newTeam = await new Team({
'id',
'email',
'username',
'admin',
'type',
])
await new Team({
name: config.authsome.teams[role].name, name: config.authsome.teams[role].name,
objectId: copyEditorBook.id, objectId: copyEditorBook.id,
objectType: 'book', objectType: 'book',
members: [{ user: [userMember] }],
role, role,
deleted: false, deleted: false,
global: false, global: false,
}).save() }).save()
await new TeamMember({
userId: copyEditorUser.id,
teamId: newTeam.id,
}).save()
} else { } else {
await new Team({ await new Team({
name: config.authsome.teams[role].name, name: config.authsome.teams[role].name,
...@@ -247,13 +219,11 @@ const createBooksWithUsersAndTeams = async () => { ...@@ -247,13 +219,11 @@ const createBooksWithUsersAndTeams = async () => {
}), }),
) )
} else { } else {
console.log('here too')
const authorBookTranslation = await BookTranslation.query() const authorBookTranslation = await BookTranslation.query()
.where('title', 'Author Book') .where('title', 'Author Book')
.andWhere('languageIso', 'en') .andWhere('languageIso', 'en')
authorBook = await Book.findById(authorBookTranslation[0].bookId) authorBook = await Book.findById(authorBookTranslation[0].bookId)
// authorBookTeams = await Team.query().where('objectId', authorBook.id)
const productionEditorBookTranslation = await BookTranslation.query() const productionEditorBookTranslation = await BookTranslation.query()
.where('title', 'Production Editor Book') .where('title', 'Production Editor Book')
...@@ -261,20 +231,10 @@ const createBooksWithUsersAndTeams = async () => { ...@@ -261,20 +231,10 @@ const createBooksWithUsersAndTeams = async () => {
productionEditorBook = await Book.findById( productionEditorBook = await Book.findById(
productionEditorBookTranslation[0].bookId, productionEditorBookTranslation[0].bookId,
) )
// productionEditorBookTeams = await Team.query().where(
// 'objectId',
// productionEditorBook.id,
// )
const copyEditorBookTranslation = await BookTranslation.query() const copyEditorBookTranslation = await BookTranslation.query()
.where('title', 'Copy Editor Book') .where('title', 'Copy Editor Book')
.andWhere('languageIso', 'en') .andWhere('languageIso', 'en')
console.log('3', copyEditorBookTranslation)
copyEditorBook = await Book.findById(copyEditorBookTranslation[0].bookId) copyEditorBook = await Book.findById(copyEditorBookTranslation[0].bookId)
// copyEditorBookTeams = await Team.query().where(
// 'objectId',
// copyEditorBook.id,
// )
} }
logger.info('Seeding complete.') logger.info('Seeding complete.')
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment