mirror of
https://github.com/wassname/talk.git
synced 2026-06-28 20:08:37 +08:00
52 lines
1.2 KiB
JavaScript
Executable File
52 lines
1.2 KiB
JavaScript
Executable File
#!/usr/bin/env node
|
|
|
|
/**
|
|
* Setup the debug paramater.
|
|
*/
|
|
|
|
process.env.DEBUG = process.env.TALK_DEBUG;
|
|
|
|
/**
|
|
* Module dependencies.
|
|
*/
|
|
|
|
const program = require('commander');
|
|
const mongoose = require('../services/mongoose');
|
|
const Setting = require('../models/setting');
|
|
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 = {id: '1', moderation: 'pre'};
|
|
|
|
Setting
|
|
.update({id: '1'}, {$setOnInsert: defaults}, {upsert: true})
|
|
.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();
|
|
}
|