Implemented "Clone card" command.

This commit is contained in:
Giulio Cesare Solaroli
2014-08-26 17:31:24 +02:00
parent 3918a7bdfc
commit 316dff637f
9 changed files with 181 additions and 35 deletions

View File

@@ -660,10 +660,27 @@ Clipperz.Base.extend(Clipperz.PM.DataModel.User, Object, {
},
'cloneRecord': function (aRecord) {
console.log("USER.cloneRecord", aRecord);
//console.log("USER.cloneRecord", aRecord);
var result;
var user = this;
return Clipperz.Async.callbacks("User.cloneRecord", [
MochiKit.Base.method(this, 'createNewRecord'),
MochiKit.Base.methodcaller('setUpWithRecord', aRecord)
// MochiKit.Base.method(this, 'createNewRecord'),
// MochiKit.Base.methodcaller('setUpWithRecord', aRecord),
// function (aValue) { result = aValue; return aValue; },
// MochiKit.Base.method(this, 'saveChanges'),
// function () { return result; }
MochiKit.Base.method(this, 'hasPendingChanges'),
Clipperz.Async.deferredIf("User has pending changes", [
MochiKit.Async.fail
], [
MochiKit.Base.method(user, 'createNewRecord'),
MochiKit.Base.methodcaller('setUpWithRecord', aRecord),
function (aValue) { result = aValue; return aValue; },
MochiKit.Base.method(user, 'saveChanges'),
function () { return result; }
])
], {trace:false});
},