From a0809e1d8535ad90c5d945514db294c7ff7b5540 Mon Sep 17 00:00:00 2001 From: Eric Mc Sween Date: Wed, 20 May 2020 10:20:28 -0400 Subject: [PATCH] Merge pull request #2833 from overleaf/jpa-ns-replace-spellcheck-languages [script] replace_spellcheck_lng: use projectIds as additional filter GitOrigin-RevId: 8813dd883c81174b7078b6af7c1dd148381fce4e --- .../scripts/replace_spellcheck_languages.js | 30 +++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/services/web/scripts/replace_spellcheck_languages.js b/services/web/scripts/replace_spellcheck_languages.js index 50f2e8da8f..6e91044ccc 100644 --- a/services/web/scripts/replace_spellcheck_languages.js +++ b/services/web/scripts/replace_spellcheck_languages.js @@ -1,4 +1,22 @@ -const { db } = require('../app/src/infrastructure/mongojs') +// 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', @@ -22,8 +40,16 @@ const languages = [ 'fi' ] +const projectIds = fs + .readFileSync(argv.projectIds, { encoding: 'utf-8' }) + .split('\n') + .filter(Boolean) + function main(callback) { - const query = { spellCheckLanguage: { $in: languages } } + const query = { + _id: { $in: projectIds.map(ObjectId) }, + spellCheckLanguage: { $in: languages } + } db.projects.update( query, { $set: { spellCheckLanguage: '' } },