var DB_HOST = 'localhost' var mongoose = require('mongoose') var _ = require('lodash') var Project = require("./lib/schemas/Project") if (process.argv.length != 3) { console.error("usage: node fetch.js [project-slug] > project.json") process.exit() } var slug = process.argv[2] mongoose.connect('mongodb://' + DB_HOST + '/vvalls', {}, function(){ // console.error("vvalls: connected to", DB_HOST) Project.findOne({ slug: slug }).exec(function(err, data){ if (err || ! data) { console.error("Project " + slug + " not found!") } else { console.error("Exporting " + data.name + " (" + slug + ") as JSON") var str = JSON.stringify( simplify(data.toObject()) ).replace(/(\.\d\d\d)\d+/g, "$1") console.log( "vvalls_data=" + str ) } process.exit() }) }) function simplify (data) { delete data._id delete data.__v _(data).keys().forEach(function(key){ var val = data[key] if (typeof val != "object") return; if (val.hasOwnProperty('length')) { data[key].forEach(simplify) } else { data[key] = simplify(val) } }) return data }