| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- // Run like this:
- // node ... --projectIds ./path/to/file/with/one/projectId/in/each/line
- const fs = require('fs')
- const { db, ObjectId } = require('../app/src/infrastructure/mongojs')
- const minimist = require('minimist')
- const argv = minimist(process.argv.slice(2))
- const commit = argv.commit !== undefined
- if (!argv.projectIds) {
- console.error('--projectIds flag is missing')
- process.exit(100)
- }
- if (!commit) {
- console.log('DOING DRY RUN. TO SAVE CHANGES PASS --commit')
- }
- const languages = [
- 'am',
- 'hy',
- 'bn',
- 'gu',
- 'he',
- 'hi',
- 'hu',
- 'is',
- 'kn',
- 'ml',
- 'mr',
- 'or',
- 'ss',
- 'ta',
- 'te',
- 'uk',
- 'uz',
- 'zu',
- 'fi'
- ]
- const projectIds = fs
- .readFileSync(argv.projectIds, { encoding: 'utf-8' })
- .split('\n')
- .filter(Boolean)
- function main(callback) {
- const query = {
- _id: { $in: projectIds.map(ObjectId) },
- spellCheckLanguage: { $in: languages }
- }
- db.projects.update(
- query,
- { $set: { spellCheckLanguage: '' } },
- { multi: true },
- (err, result) => {
- if (err) {
- return callback(err)
- }
- console.log(`>> Updated projects: ${JSON.stringify(result)}`)
- return callback()
- }
- )
- }
- if (require.main === module) {
- main(err => {
- if (err) {
- console.error(err)
- return process.exit(1)
- }
- console.log('>> done')
- process.exit(0)
- })
- }
|