1
0
mirror of http://git.whoc.org.uk/git/password-manager.git synced 2025-10-25 17:47:34 +02:00

Implemented Marco's remarks on PIN and Preferences

This commit is contained in:
Dario Chiappetta
2015-10-06 15:33:42 +02:00
parent f2b85dd506
commit e21645028f
8 changed files with 137 additions and 223 deletions

View File

@@ -40,19 +40,27 @@ Clipperz.Base.extend(Clipperz.PM.DataModel.User.Header.Preferences, Clipperz.PM.
},
//-------------------------------------------------------------------------
'mergeDefaultPreferences': function(somePreferences) {
'mergePreferences': function(somePreferences, someOtherPreferences) {
var result;
result = new Clipperz.KeyValueObjectStore();
result.setValues(MochiKit.Base.updatetree(
Clipperz.Base.deepClone(Clipperz.PM.DataModel.User.Header.Preferences.defaultPreferences),
Clipperz.Base.deepClone(someOtherPreferences),
somePreferences
));
return result;
},
'mergeDefaultPreferences': function(somePreferences) {
return this.mergePreferences(somePreferences, Clipperz.PM.DataModel.User.Header.Preferences.defaultPreferences);
},
'mergeUserPreferences': function(somePreferences) {
return this.mergePreferences(somePreferences, this._objectDataStore.values());
},
'getPreferences': function() {
return Clipperz.Async.callbacks("User.Header.Preferences.getPreferences", [
@@ -68,6 +76,14 @@ Clipperz.Base.extend(Clipperz.PM.DataModel.User.Header.Preferences, Clipperz.PM.
], {trace:false});
},
'setPreferences': function(anObject) {
return Clipperz.Async.callbacks("User.Header.Preferences.setPreferences", [
MochiKit.Base.method(this, 'mergeUserPreferences', anObject),
MochiKit.Base.methodcaller('values'),
MochiKit.Base.method(this, 'setValues')
], {trace:false});
},
//=========================================================================
__syntaxFix__: "syntax fix"
});

View File

@@ -929,10 +929,10 @@ console.log("Warning: User.recordWithLabel('" + aLabel + "') is returning more t
], {trace:false});
},
'setPreference': function(aKey, aValue) {
return Clipperz.Async.callbacks("User.setPreference", [
setPreferences: function(anObject) {
return Clipperz.Async.callbacks("User.setPreferences", [
MochiKit.Base.method(this, 'getHeaderIndex', 'preferences'),
MochiKit.Base.methodcaller('setValue', aKey, aValue),
MochiKit.Base.methodcaller('setPreferences', anObject),
MochiKit.Base.method(this, 'saveChanges')
], {trace:false});
},