summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2014-01-31 10:14:15 +0200
committerKaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>2014-02-01 01:43:45 +0200
commit33de0e7eba4962744a1c93556d0b6d5b4c50221b (patch)
treecaa778752440edc6b918d16de46fb12ae6336af0
parent34ad0e78940d915d9875001f2b396b2c99221a8b (diff)
downloadaconf-33de0e7eba4962744a1c93556d0b6d5b4c50221b.tar.bz2
aconf-33de0e7eba4962744a1c93556d0b6d5b4c50221b.tar.xz
web client: extract private non-exclusive deletion function
-rw-r--r--web/client.js86
1 files changed, 45 insertions, 41 deletions
diff --git a/web/client.js b/web/client.js
index 255bc01..5dfe9ef 100644
--- a/web/client.js
+++ b/web/client.js
@@ -352,51 +352,55 @@ $(function() {
return data.set(name, name);
};
- data.delete = function(name) {
- return exclusive(function() {
- var def = $.Deferred();
- var length = data.data.length;
-
- data.set(name, null).done(function(txnValid) {
- if (isTreeNode(data.meta) &&
- data.meta.type != "set") {
-
- delete changed[join(path, name)];
- changed[path] = path;
-
- if (data.meta.type == "list")
- for (var i = name; i < length; i++) {
- var opath = join(path, i + 1);
- var npath = join(path, i);
-
- _.each(
- [changed, invalid],
- function(map) {
- _.each(
- _.keys(map),
- function(p) {
- if (isSubordinate(
- p, opath
- )) {
- map[npath +
- p.substring(
- opath.length
- )] = map[p];
- delete map[p];
- }
- });
- }
- );
- }
- }
- def.resolve(txnValid);
+ function _delete(name) {
+ var def = $.Deferred();
+ var length = data.data.length;
+
+ data.set(name, null).done(function(txnValid) {
+ if (isTreeNode(data.meta) &&
+ data.meta.type != "set") {
+
+ delete changed[join(path, name)];
+ changed[path] = path;
+
+ if (data.meta.type == "list")
+ for (var i = name; i < length; i++) {
+ var opath = join(path, i + 1);
+ var npath = join(path, i);
+
+ _.each(
+ [changed, invalid],
+ function(map) {
+ _.each(
+ _.keys(map),
+ function(p) {
+ if (isSubordinate(
+ p, opath
+ )) {
+ map[npath +
+ p.substring(
+ opath.length
+ )] = map[p];
+ delete map[p];
+ }
+ });
+ }
+ );
+ }
+ }
+ def.resolve(txnValid);
- }).fail(function() { def.reject(); });
+ }).fail(function() { def.reject(); });
- return def;
- });
+ return def;
}
+ data.delete = function(name) {
+ return exclusive(function() {
+ return _delete(name);
+ });
+ };
+
data.invoke = function(name) {
return objRequest(join(path, name), {type: "POST"});
};