|
@ -281,6 +281,7 @@ class Wallet: |
|
|
self.fee = 100000 |
|
|
self.fee = 100000 |
|
|
self.num_zeros = 0 |
|
|
self.num_zeros = 0 |
|
|
self.master_public_key = '' |
|
|
self.master_public_key = '' |
|
|
|
|
|
self.conversion_currency = None |
|
|
|
|
|
|
|
|
# saved fields |
|
|
# saved fields |
|
|
self.use_encryption = False |
|
|
self.use_encryption = False |
|
@ -638,29 +639,33 @@ class Wallet: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def save(self): |
|
|
def save(self): |
|
|
|
|
|
# TODO: Need special config storage class. Should not be mixed |
|
|
|
|
|
# up with the wallet. |
|
|
|
|
|
# Settings should maybe be stored in a flat ini file. |
|
|
s = { |
|
|
s = { |
|
|
'seed_version':self.seed_version, |
|
|
'seed_version': self.seed_version, |
|
|
'use_encryption':self.use_encryption, |
|
|
'use_encryption': self.use_encryption, |
|
|
'use_change':self.use_change, |
|
|
'use_change': self.use_change, |
|
|
'master_public_key': self.master_public_key.encode('hex'), |
|
|
'master_public_key': self.master_public_key.encode('hex'), |
|
|
'fee':self.fee, |
|
|
'fee': self.fee, |
|
|
'server':self.server, |
|
|
'server': self.server, |
|
|
'seed':self.seed, |
|
|
'seed': self.seed, |
|
|
'addresses':self.addresses, |
|
|
'addresses': self.addresses, |
|
|
'change_addresses':self.change_addresses, |
|
|
'change_addresses': self.change_addresses, |
|
|
'history':self.history, |
|
|
'history': self.history, |
|
|
'labels':self.labels, |
|
|
'labels': self.labels, |
|
|
'contacts':self.addressbook, |
|
|
'contacts': self.addressbook, |
|
|
'imported_keys':self.imported_keys, |
|
|
'imported_keys': self.imported_keys, |
|
|
'aliases':self.aliases, |
|
|
'aliases': self.aliases, |
|
|
'authorities':self.authorities, |
|
|
'authorities': self.authorities, |
|
|
'receipts':self.receipts, |
|
|
'receipts': self.receipts, |
|
|
'num_zeros':self.num_zeros, |
|
|
'num_zeros': self.num_zeros, |
|
|
'frozen_addresses':self.frozen_addresses, |
|
|
'frozen_addresses': self.frozen_addresses, |
|
|
'prioritized_addresses':self.prioritized_addresses, |
|
|
'prioritized_addresses': self.prioritized_addresses, |
|
|
'expert_mode':self.expert_mode, |
|
|
'expert_mode': self.expert_mode, |
|
|
'gap_limit':self.gap_limit, |
|
|
'gap_limit': self.gap_limit, |
|
|
'debug_server':self.debug_server, |
|
|
'debug_server': self.debug_server, |
|
|
|
|
|
'conversion_currency': self.conversion_currency |
|
|
} |
|
|
} |
|
|
f = open(self.path,"w") |
|
|
f = open(self.path,"w") |
|
|
f.write( repr(s) ) |
|
|
f.write( repr(s) ) |
|
@ -685,26 +690,26 @@ class Wallet: |
|
|
self.seed_version = d.get('seed_version') |
|
|
self.seed_version = d.get('seed_version') |
|
|
self.master_public_key = d.get('master_public_key').decode('hex') |
|
|
self.master_public_key = d.get('master_public_key').decode('hex') |
|
|
self.use_encryption = d.get('use_encryption') |
|
|
self.use_encryption = d.get('use_encryption') |
|
|
self.use_change = bool(d.get('use_change',True)) |
|
|
self.use_change = bool(d.get('use_change', True)) |
|
|
self.fee = int( d.get('fee') ) |
|
|
self.fee = int(d.get('fee')) |
|
|
self.seed = d.get('seed') |
|
|
self.seed = d.get('seed') |
|
|
self.server = d.get('server') |
|
|
self.server = d.get('server') |
|
|
#blocks = d.get('blocks') |
|
|
|
|
|
self.addresses = d.get('addresses') |
|
|
self.addresses = d.get('addresses') |
|
|
self.change_addresses = d.get('change_addresses') |
|
|
self.change_addresses = d.get('change_addresses') |
|
|
self.history = d.get('history') |
|
|
self.history = d.get('history') |
|
|
self.labels = d.get('labels') |
|
|
self.labels = d.get('labels') |
|
|
self.addressbook = d.get('contacts') |
|
|
self.addressbook = d.get('contacts') |
|
|
self.imported_keys = d.get('imported_keys',{}) |
|
|
self.imported_keys = d.get('imported_keys', {}) |
|
|
self.aliases = d.get('aliases',{}) |
|
|
self.aliases = d.get('aliases', {}) |
|
|
self.authorities = d.get('authorities',{}) |
|
|
self.authorities = d.get('authorities', {}) |
|
|
self.receipts = d.get('receipts',{}) |
|
|
self.receipts = d.get('receipts', {}) |
|
|
self.num_zeros = d.get('num_zeros',0) |
|
|
self.num_zeros = d.get('num_zeros', 0) |
|
|
self.frozen_addresses = d.get('frozen_addresses',[]) |
|
|
self.frozen_addresses = d.get('frozen_addresses', []) |
|
|
self.prioritized_addresses = d.get('prioritized_addresses',[]) |
|
|
self.prioritized_addresses = d.get('prioritized_addresses', []) |
|
|
self.expert_mode = d.get('expert_mode',False) |
|
|
self.expert_mode = d.get('expert_mode', False) |
|
|
self.gap_limit = d.get('gap_limit',5) |
|
|
self.gap_limit = d.get('gap_limit', 5) |
|
|
self.debug_server = d.get('debug_server',False) |
|
|
self.debug_server = d.get('debug_server', False) |
|
|
|
|
|
self.conversion_currency = d.get('conversion_currency', 'USD') |
|
|
except: |
|
|
except: |
|
|
raise BaseException("cannot read wallet file") |
|
|
raise BaseException("cannot read wallet file") |
|
|
|
|
|
|
|
|