From 146ccc126bf4e5e958ea0de36e2208b02faa3ff5 Mon Sep 17 00:00:00 2001 From: aritas1 Date: Tue, 14 Feb 2012 18:50:04 +0400 Subject: [PATCH] add a defaultGroup for the public pads --- node/db/Pad.js | 37 ++++++++++++++++++++++++++++++++++--- 1 file changed, 34 insertions(+), 3 deletions(-) diff --git a/node/db/Pad.js b/node/db/Pad.js index 632eebe8c..9006a7bf9 100644 --- a/node/db/Pad.js +++ b/node/db/Pad.js @@ -10,6 +10,7 @@ var async = require("async"); var settings = require('../utils/Settings'); var authorManager = require("./AuthorManager"); var padManager = require("./PadManager"); +var groupManager = require("./GroupManager"); var padMessageHandler = require("../handler/PadMessageHandler"); var readOnlyManager = require("./ReadOnlyManager"); var crypto = require("crypto"); @@ -348,7 +349,24 @@ Pad.prototype.init = function init(text, callback) { else { var firstChangeset = Changeset.makeSplice("\n", 0, 0, exports.cleanText(text)); - + + console.log(_this); + console.log(this); + console.log(_this.id); + + if(_this.id.indexOf("$")==-1) + { + groupID = "g.defaultGroupName"; + groupManager.doesGroupExist(groupID, function(err, exists) + { + if(!exists) + { + db.set("group:" + groupID, {pads: {}}); + } + }); + db.setSub("group:"+groupID, ["pads", _this.id], 1); + } + _this.appendRevision(firstChangeset, ''); } @@ -389,10 +407,23 @@ Pad.prototype.remove = function remove(callback) { callback(); }); } - //its no group pad, nothing to do here + //its no group pad, so remove this pad from the defaultGroup else { - callback(); + var groupID = "g.defaultGroupName"; + + db.get("group:" + groupID, function (err, group) + { + if(ERR(err, callback)) return; + + //remove the pad entry + delete group.pads[padID]; + + //set the new value + db.set("group:" + groupID, group); + + callback(); + }); } }, //remove the readonly entries