Wallet/src/js/services/bwsError.js

127 lines
4.9 KiB
JavaScript
Raw Normal View History

'use strict';
angular.module('copayApp.services')
2015-08-13 16:47:10 -03:00
.factory('bwsError', function bwcErrorService($log, gettextCatalog) {
var root = {};
2015-12-08 12:29:10 -03:00
root.msg = function(err, prefix) {
var body = '';
prefix = prefix || '';
2015-12-08 12:29:10 -03:00
if (err && err.code) {
switch (err.code) {
case 'CONNECTION_ERROR':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Network connection error');
break;
case 'NOT_FOUND':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Wallet service not found');
break;
2015-12-08 12:29:10 -03:00
case 'BAD_SIGNATURES':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Signatures rejected by server');
break;
2015-12-08 12:29:10 -03:00
case 'COPAYER_DATA_MISMATCH':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Copayer data mismatch');
break;
2015-12-08 12:29:10 -03:00
case 'COPAYER_IN_WALLET':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Copayer already in this wallet');
break;
2015-12-08 12:29:10 -03:00
case 'COPAYER_REGISTERED':
body = gettextCatalog.getString('Key already associated with an existing wallet');
break;
2015-12-08 12:29:10 -03:00
case 'COPAYER_VOTED':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Copayer already voted on this spend proposal');
break;
2015-12-08 12:29:10 -03:00
case 'DUST_AMOUNT':
body = gettextCatalog.getString('Amount below dust threshold');
break;
2015-12-08 12:29:10 -03:00
case 'INCORRECT_ADDRESS_NETWORK':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Incorrect address network');
break;
2015-12-08 12:29:10 -03:00
case 'INSUFFICIENT_FUNDS':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Insufficient funds');
break;
2015-12-08 12:29:10 -03:00
case 'INSUFFICIENT_FUNDS_FOR_FEE':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Insufficient funds for fee');
break;
2015-12-08 12:29:10 -03:00
case 'INVALID_ADDRESS':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Invalid address');
break;
2015-12-08 12:29:10 -03:00
case 'LOCKED_FUNDS':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Funds are locked by pending spend proposals');
break;
2015-12-08 12:29:10 -03:00
case 'NOT_AUTHORIZED':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Not authorized');
break;
2015-12-08 12:29:10 -03:00
case 'TX_ALREADY_BROADCASTED':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Transaction already broadcasted');
break;
2015-12-08 12:29:10 -03:00
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');
break;
2015-12-08 12:29:10 -03:00
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');
break;
2015-12-08 12:29:10 -03:00
case 'TX_NOT_ACCEPTED':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Spend proposal is not accepted');
break;
2015-12-08 12:29:10 -03:00
case 'TX_NOT_FOUND':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Spend proposal not found');
break;
2015-12-08 12:29:10 -03:00
case 'TX_NOT_PENDING':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('The spend proposal is not pending');
break;
2015-12-08 12:29:10 -03:00
case 'UPGRADE_NEEDED':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Please upgrade Copay to perform this action');
break;
2015-12-08 12:29:10 -03:00
case 'WALLET_ALREADY_EXISTS':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Wallet already exists');
break;
2015-12-08 12:29:10 -03:00
case 'WALLET_FULL':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Wallet is full');
break;
2015-12-08 12:29:10 -03:00
case 'WALLET_NOT_COMPLETE':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Wallet is not complete');
break;
2015-12-08 12:29:10 -03:00
case 'WALLET_NOT_FOUND':
2015-08-13 16:47:10 -03:00
body = gettextCatalog.getString('Wallet not found');
break;
2015-12-08 12:29:10 -03:00
case 'SERVER_COMPROMISED':
2015-09-02 15:56:00 -03:00
body = gettextCatalog.getString('Server response could not be verified');
break;
2015-12-08 12:29:10 -03:00
case 'WALLET_DOES_NOT_EXIST':
2016-01-16 17:04:01 -06:00
body = gettextCatalog.getString('Wallet not registered 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;
2015-12-08 12:29:10 -03:00
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;
2015-11-04 16:17:04 -03:00
case 'MAIN_ADDRESS_GAP_REACHED':
body = gettextCatalog.getString('Empty addresses limit reached. New addresses cannot be generated.');
2015-11-04 16:17:04 -03:00
break;
2015-12-08 12:29:10 -03:00
case 'WALLET_LOCKED':
body = gettextCatalog.getString('Wallet is locked');
break;
2015-09-08 00:57:07 -03:00
case 'ERROR':
body = (err.message || err.error);
break;
2015-09-02 15:56:00 -03:00
default:
$log.warn('Unknown error type:', err.code);
2015-12-08 12:29:10 -03:00
body = err.message || err.code;
2015-09-02 15:56:00 -03:00
break;
}
} else if (err.message) {
body = gettextCatalog.getString(err.message);
} else {
body = gettextCatalog.getString(err);
}
2015-12-08 12:29:10 -03:00
var msg = prefix + (body ? (prefix ? ': ' : '') + body : '');
return msg;
};
2015-12-08 12:29:10 -03:00
root.cb = function(err, prefix, cb) {
return cb(root.msg(err, prefix))
};
return root;
});