Skip to content

Commit

Permalink
Changed redis to MongoDb
Browse files Browse the repository at this point in the history
  • Loading branch information
xmahle committed Mar 4, 2015
1 parent d070e3a commit 6a691fd
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 30 deletions.
4 changes: 1 addition & 3 deletions lib/secret.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
module.exports = {
"redisPort": 6379,
"redisMachine": "",
"redisAuth": "",
"mongoDBconnection": "mongodb://127.0.0.1:27017"
};
5 changes: 0 additions & 5 deletions lib/secret.js.example

This file was deleted.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "nodejs-todo",
"version": "0.0.4-28",
"description": "Simple redis backed todo app.",
"description": "Simple mongodb backed todo app.",
"main": "server.js",
"scripts": {
"start": "node server.js"
Expand All @@ -15,7 +15,7 @@
"ejs": "~0.8.3",
"jasmine-node": "~1.0.26",
"underscore": "~1.4.2",
"redis": "~0.8.4"
"mongodb": "~2.*.*"
},
"subdomain": "nodejs-todo",
"engines": {
Expand Down
45 changes: 26 additions & 19 deletions server.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,20 @@ var config = require('./lib/config');
var redis = require("redis");
var secret = require('./lib/secret');

var client = null;
if(process.env.REDISTOGO_URL) { //heroku
client = require('redis-url').connect(process.env.REDISTOGO_URL);
} else if(config.env == "development") {
client = redis.createClient();
} else { //nodejitsu
client = redis.createClient(secret.redisPort, secret.redisMachine);
client.auth(secret.redisAuth, function (err) {
if (err) { throw err; }
});
}
var MongoClient = require('mongodb').MongoClient
, ObjectID = require('mongodb').ObjectID;

var collection = null;

MongoClient.connect(secret.mongoDBconnection, function (err, db) {
if (err) {
throw err;
} else {
collection = db.collection('todos');

}
//db.close();
});

app.set('view engine', 'ejs');
app.set('view options', { layout: false });
Expand Down Expand Up @@ -53,28 +56,32 @@ app.get('/', function (req, res) {
});

app.get('/todos', function(req, res) {
client.hgetall("todos", function(err, data) {
collection.find().toArray(function(err, data) {
json(res, data);
});

});

app.post('/todos/create', function(req, res) {
var id = guid();
client.hset("todos", id, req.body.description);

json(res, { id: id });
collection.insert({description:req.body.description},{}, function(err, docs) {
json(res, { id: docs._id });
});

});

app.post('/todos/update', function(req, res) {
client.hset("todos", req.body.id, req.body.description);
collection.update({_id:ObjectID(req.body.id)}, {$set:{description:req.body.description}});

json(res, { });
});

app.post('/todos/delete', function(req, res) {
client.hdel("todos", req.body.id);

json(res, { });
collection.remove({_id:ObjectID(req.body.id)}, function(err, result) {
if(err)
console.log(err);
json(res, result);
});
});

server.listen(process.env.PORT || config.port);
3 changes: 2 additions & 1 deletion views/index.ejs
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@
<script>
$(function() {
$.getJSON("/todos", function(data) {
var _id;
for(var key in data) {
addNewEntry(key, data[key]);
addNewEntry(data[key]._id, data[key].description);
}
addNewEntry();
Expand Down

0 comments on commit 6a691fd

Please sign in to comment.