aboutsummaryrefslogtreecommitdiffstats
path: root/public/js/setup.coffee
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2014-09-06 22:18:35 -0700
committerAdam Soltys <[email protected]>2014-09-06 22:18:35 -0700
commit2e8901c307347cdb0a6c0a8582b24c4655ec5d66 (patch)
treeb11105bf17c414983633414d9986f31f9d16ff68 /public/js/setup.coffee
parente547723b23ccc58c832cac966b1b666a426afefb (diff)
downloadcoinos-server-2e8901c307347cdb0a6c0a8582b24c4655ec5d66.tar.gz
coinos-server-2e8901c307347cdb0a6c0a8582b24c4655ec5d66.zip
Accept extended pubkeys, multisig, or single addresses
Diffstat (limited to 'public/js/setup.coffee')
-rw-r--r--public/js/setup.coffee21
1 files changed, 17 insertions, 4 deletions
diff --git a/public/js/setup.coffee b/public/js/setup.coffee
index 8348aaf4..72532547 100644
--- a/public/js/setup.coffee
+++ b/public/js/setup.coffee
@@ -8,6 +8,7 @@
#= require ../js/2.5.3-crypto-sha256.js
#= require ../js/sha512.js
#= require ../js/rfc1751.js
+#= require ../js/bitcoinjs-min-1.0.2.js
#= require ../js/bitcoinjs-min.js
#= require ../js/modsqrt.js
#= require ../js/bip32.js
@@ -75,10 +76,9 @@ $(->
)
$('#pubkey').blur(->
- try
- new BIP32($(this).val())
+ if check_address($(this).val())
$(this).parent().removeClass('has-error')
- catch
+ else
$(this).parent().addClass('has-error')
)
@@ -169,5 +169,18 @@ $(->
$('#setup .has-error').effect('shake', 500)
return false
)
-
)
+
+check_address = (address) ->
+ try
+ bitcoin.Address.fromBase58Check(address)
+ return true
+ catch
+ return isBip32(address)
+
+isBip32 = (address) ->
+ try
+ new BIP32(address)
+ return true
+ catch
+ return false