mirror of
https://github.com/wassname/talk.git
synced 2026-06-28 23:26:48 +08:00
52 lines
1.2 KiB
JavaScript
Executable File
52 lines
1.2 KiB
JavaScript
Executable File
#!/usr/bin/env node
|
|
|
|
/**
|
|
* Module dependencies.
|
|
*/
|
|
|
|
const program = require('commander');
|
|
const mongoose = require('../services/mongoose');
|
|
const SettingsService = require('../services/settings');
|
|
const util = require('../util');
|
|
|
|
// Register the shutdown criteria.
|
|
util.onshutdown([
|
|
() => mongoose.disconnect()
|
|
]);
|
|
|
|
//==============================================================================
|
|
// Setting up the program command line arguments.
|
|
//==============================================================================
|
|
|
|
program
|
|
.command('init')
|
|
.description('initilizes the talk settings')
|
|
.action(() => {
|
|
const defaults = {
|
|
moderation: 'POST',
|
|
wordlist: {
|
|
banned: [],
|
|
suspect: []
|
|
}
|
|
};
|
|
|
|
SettingsService
|
|
.init(defaults)
|
|
.then(() => {
|
|
console.log('Created settings object.');
|
|
util.shutdown();
|
|
})
|
|
.catch((err) => {
|
|
console.error(`failed to create the settings object ${JSON.stringify(err)}`);
|
|
util.shutdown(1);
|
|
});
|
|
});
|
|
|
|
program.parse(process.argv);
|
|
|
|
// If there is no command listed, output help.
|
|
if (!process.argv.slice(2).length) {
|
|
program.outputHelp();
|
|
util.shutdown();
|
|
}
|