123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- // this reformats jokes from format v2 to format v3
- // run this with the command "npm run reformat"
- const fs = require("fs-extra");
- const isEmpty = require("svjsl").isEmpty;
- try
- {
- console.log(`\nReformatting jokes from file "./data/jokes.json" to new format and putting it in file "./data/jokes_new.json"...`);
- let initialJokes = JSON.parse(fs.readFileSync("./data/jokes.json").toString());
- let newJokes = [];
- let id = 0;
- initialJokes.jokes.forEach(joke => {
- if(joke.type == "single") newJokes.push({
- category: joke.category,
- type: "single",
- joke: joke.joke,
- flags: {
- nsfw: isEmpty(joke.flags.nsfw) ? false : true,
- racist: isEmpty(joke.flags.racist) ? false : true,
- sexist: isEmpty(joke.flags.sexist) ? false : true,
- religious: isEmpty(joke.flags.religious) ? false : true,
- political: isEmpty(joke.flags.political) ? false : true,
- explicit: isEmpty(joke.flags.explicit) ? false : true
- },
- id: id
- });
- if(joke.type == "twopart") newJokes.push({
- category: joke.category,
- type: "twopart",
- setup: joke.setup,
- delivery: joke.delivery,
- flags: {
- nsfw: isEmpty(joke.flags.nsfw) ? false : true,
- racist: isEmpty(joke.flags.racist) ? false : true,
- sexist: isEmpty(joke.flags.sexist) ? false : true,
- religious: isEmpty(joke.flags.religious) ? false : true,
- political: isEmpty(joke.flags.political) ? false : true,
- explicit: isEmpty(joke.flags.explicit) ? false : true
- },
- id: id
- });
- id++;
- });
- let doneFile = {
- "info": {
- "formatVersion": 3
- },
- "jokes": newJokes
- };
- fs.writeFileSync("./data/jokes_new.json", JSON.stringify(doneFile, null, 4));
- console.log(`\x1b[32m\x1b[1mDone reformatting all ${newJokes.length} jokes.\x1b[0m\n`);
- process.exit(0);
- }
- catch(err)
- {
- console.log(`\n\n\x1b[31m\x1b[1m>> Error while reformatting jokes:\n${err}\n\n\x1b[0m`);
- process.exit(1);
- }
|