id of imported account
This commit is contained in:
parent
339dd46d98
commit
9b8ad42a66
|
@ -42,6 +42,9 @@ from synchronizer import WalletSynchronizer
|
||||||
COINBASE_MATURITY = 100
|
COINBASE_MATURITY = 100
|
||||||
DUST_THRESHOLD = 5430
|
DUST_THRESHOLD = 5430
|
||||||
|
|
||||||
|
# internal ID for imported account
|
||||||
|
IMPORTED_ACCOUNT = '/x'
|
||||||
|
|
||||||
# AES encryption
|
# AES encryption
|
||||||
EncodeAES = lambda secret, s: base64.b64encode(aes.encryptData(secret,s))
|
EncodeAES = lambda secret, s: base64.b64encode(aes.encryptData(secret,s))
|
||||||
DecodeAES = lambda secret, e: aes.decryptData(secret, base64.b64decode(e))
|
DecodeAES = lambda secret, e: aes.decryptData(secret, base64.b64decode(e))
|
||||||
|
@ -246,7 +249,7 @@ class Abstract_Wallet:
|
||||||
self.accounts = {}
|
self.accounts = {}
|
||||||
self.imported_keys = self.storage.get('imported_keys',{})
|
self.imported_keys = self.storage.get('imported_keys',{})
|
||||||
if self.imported_keys:
|
if self.imported_keys:
|
||||||
self.accounts[-1] = ImportedAccount(self.imported_keys)
|
self.accounts['/x'] = ImportedAccount(self.imported_keys)
|
||||||
|
|
||||||
def synchronize(self):
|
def synchronize(self):
|
||||||
pass
|
pass
|
||||||
|
@ -285,7 +288,7 @@ class Abstract_Wallet:
|
||||||
# store the originally requested keypair into the imported keys table
|
# store the originally requested keypair into the imported keys table
|
||||||
self.imported_keys[address] = pw_encode(sec, password )
|
self.imported_keys[address] = pw_encode(sec, password )
|
||||||
self.storage.put('imported_keys', self.imported_keys, True)
|
self.storage.put('imported_keys', self.imported_keys, True)
|
||||||
self.accounts[-1] = ImportedAccount(self.imported_keys)
|
self.accounts[IMPORTED_ACCOUNT] = ImportedAccount(self.imported_keys)
|
||||||
|
|
||||||
if self.synchronizer:
|
if self.synchronizer:
|
||||||
self.synchronizer.subscribe_to_addresses([address])
|
self.synchronizer.subscribe_to_addresses([address])
|
||||||
|
@ -297,9 +300,9 @@ class Abstract_Wallet:
|
||||||
self.imported_keys.pop(addr)
|
self.imported_keys.pop(addr)
|
||||||
self.storage.put('imported_keys', self.imported_keys, True)
|
self.storage.put('imported_keys', self.imported_keys, True)
|
||||||
if self.imported_keys:
|
if self.imported_keys:
|
||||||
self.accounts[-1] = ImportedAccount(self.imported_keys)
|
self.accounts[IMPORTED_ACCOUNT] = ImportedAccount(self.imported_keys)
|
||||||
else:
|
else:
|
||||||
self.accounts.pop(-1)
|
self.accounts.pop(IMPORTED_ACCOUNT)
|
||||||
|
|
||||||
|
|
||||||
def set_label(self, name, text = None):
|
def set_label(self, name, text = None):
|
||||||
|
@ -365,7 +368,7 @@ class Abstract_Wallet:
|
||||||
def getpubkeys(self, addr):
|
def getpubkeys(self, addr):
|
||||||
assert is_valid(addr) and self.is_mine(addr)
|
assert is_valid(addr) and self.is_mine(addr)
|
||||||
account, sequence = self.get_address_index(addr)
|
account, sequence = self.get_address_index(addr)
|
||||||
if account != -1:
|
if account != IMPORTED_ACCOUNT:
|
||||||
a = self.accounts[account]
|
a = self.accounts[account]
|
||||||
return a.get_pubkeys( sequence )
|
return a.get_pubkeys( sequence )
|
||||||
|
|
||||||
|
@ -722,7 +725,7 @@ class Abstract_Wallet:
|
||||||
address = inputs[0].get('address')
|
address = inputs[0].get('address')
|
||||||
account, _ = self.get_address_index(address)
|
account, _ = self.get_address_index(address)
|
||||||
|
|
||||||
if not self.use_change or account == -1:
|
if not self.use_change or account == IMPORTED_ACCOUNT:
|
||||||
change_addr = inputs[-1]['address']
|
change_addr = inputs[-1]['address']
|
||||||
else:
|
else:
|
||||||
change_addr = self.accounts[account].get_addresses(1)[-self.gap_limit_for_change]
|
change_addr = self.accounts[account].get_addresses(1)[-self.gap_limit_for_change]
|
||||||
|
|
Loading…
Reference in New Issue