diff options
author | Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi> | 2014-04-06 12:22:07 +0300 |
---|---|---|
committer | Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi> | 2014-04-06 21:33:15 +0300 |
commit | a7469dcde4a74020d29df0d7c40a5669e8349ef2 (patch) | |
tree | d7e75e0fe167aebb934f5b3e76c82b3c50412254 | |
parent | 61223f79ea6aaaae435c22b111b957312dc6e091 (diff) | |
download | aconf-a7469dcde4a74020d29df0d7c40a5669e8349ef2.tar.bz2 aconf-a7469dcde4a74020d29df0d7c40a5669e8349ef2.tar.xz |
web client: disallow empty collection members
-rw-r--r-- | web/transaction.js | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/web/transaction.js b/web/transaction.js index 7c2101f..5c0488d 100644 --- a/web/transaction.js +++ b/web/transaction.js @@ -157,6 +157,9 @@ define( ensureKeyPresence(name); var value = data.get(name, true); + var empty = newValue === null && + type.isCollection(data.meta); + if (newValue === undefined) newValue = null; var tn = _.isObject(newValue); var npv = tn ? mpath : newValue; @@ -186,6 +189,11 @@ define( } prevTask.always(function() { + if (empty) { + def.reject("Value not set"); + return; + } + var del = newValue == null; var options; @@ -330,7 +338,7 @@ define( var def = $.Deferred(); var length = data.data.length; - data.set(name, null).done(function(txnValid) { + data.set(name).done(function(txnValid) { if (type.isTreeNode(data.meta) && data.meta.type != "set") { |