2015-08-12 11:08:33 -03:00
'use strict' ;
angular . module ( 'copayApp.services' )
2015-08-13 16:47:10 -03:00
. factory ( 'bwsError' , function bwcErrorService ( $log , gettextCatalog ) {
2015-08-12 11:08:33 -03:00
var root = { } ;
root . msg = function ( err , prefix ) {
var body = '' ;
prefix = prefix || '' ;
if ( err && err . code ) {
switch ( err . code ) {
case 'CONNECTION_ERROR' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Network connection error' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'NOT_FOUND' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Wallet service not found' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'BAD_SIGNATURES' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Signatures rejected by server' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'COPAYER_DATA_MISMATCH' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Copayer data mismatch' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'COPAYER_IN_WALLET' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Copayer already in this wallet' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'COPAYER_REGISTERED' :
2015-09-04 21:18:20 -03:00
body = gettextCatalog . getString ( 'Wallet already registered' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'COPAYER_VOTED' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Copayer already voted on this spend proposal' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'DUST_AMOUNT' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Amount below dust threshold' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'INCORRECT_ADDRESS_NETWORK' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Incorrect address network' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'INSUFFICIENT_FUNDS' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Insufficient funds' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'INSUFFICIENT_FUNDS_FOR_FEE' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Insufficient funds for fee' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'INVALID_ADDRESS' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Invalid address' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'LOCKED_FUNDS' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Funds are locked by pending spend proposals' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'NOT_AUTHORIZED' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Not authorized' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'TX_ALREADY_BROADCASTED' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Transaction already broadcasted' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'TX_CANNOT_CREATE' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Locktime in effect. Please wait to create a new spend proposal' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'TX_CANNOT_REMOVE' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Locktime in effect. Please wait to remove this spend proposal' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'TX_NOT_ACCEPTED' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Spend proposal is not accepted' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'TX_NOT_FOUND' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Spend proposal not found' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'TX_NOT_PENDING' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'The spend proposal is not pending' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'UPGRADE_NEEDED' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Please upgrade Copay to perform this action' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'WALLET_ALREADY_EXISTS' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Wallet already exists' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'WALLET_FULL' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Wallet is full' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'WALLET_NOT_COMPLETE' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Wallet is not complete' ) ;
2015-08-12 11:08:33 -03:00
break ;
case 'WALLET_NOT_FOUND' :
2015-08-13 16:47:10 -03:00
body = gettextCatalog . getString ( 'Wallet not found' ) ;
2015-08-12 11:08:33 -03:00
break ;
2015-09-02 15:56:00 -03:00
case 'SERVER_COMPROMISED' :
body = gettextCatalog . getString ( 'Server response could not be verified' ) ;
break ;
case 'WALLET_DOES_NOT_EXIST' :
2015-09-05 11:22:27 -03:00
body = gettextCatalog . getString ( 'Wallet not registed at the Wallet Service. Recreate it from "Create Wallet" using "Advanced Options" to set your seed' ) ;
2015-09-02 15:56:00 -03:00
break ;
case 'INVALID_BACKUP' :
2015-09-03 01:49:48 -03:00
body = gettextCatalog . getString ( 'Wallet seed is invalid' ) ;
2015-09-02 15:56:00 -03:00
break ;
default :
$log . warn ( 'Unknown error type:' , err . code ) ;
body = err . code + ':' + err . message ;
break ;
2015-08-12 11:08:33 -03:00
}
}
var msg = prefix + ( body ? ': ' + body : '' ) ;
return msg ;
} ;
root . cb = function ( err , prefix , cb ) {
return cb ( root . msg ( err , prefix ) )
} ;
return root ;
} ) ;