2016-08-15 17:42:04 -03:00
|
|
|
'use strict';
|
|
|
|
|
|
2017-01-13 01:37:13 -03:00
|
|
|
angular.module('copayApp.controllers').controller('tabSettingsController', function($scope, appConfigService, $log, lodash, uxLanguage, platformInfo, profileService, feeService, configService, externalLinkService, bitpayCardService, storageService, glideraService, coinbaseService, gettextCatalog) {
|
2016-08-15 17:42:04 -03:00
|
|
|
|
2016-09-21 17:12:25 -03:00
|
|
|
var updateConfig = function() {
|
2016-10-28 12:07:59 -04:00
|
|
|
var isCordova = platformInfo.isCordova;
|
|
|
|
|
var isWP = platformInfo.isWP;
|
2016-11-22 12:35:51 -03:00
|
|
|
var isWindowsPhoneApp = platformInfo.isWP && isCordova;
|
2016-10-28 12:07:59 -04:00
|
|
|
|
|
|
|
|
$scope.usePushNotifications = isCordova && !isWP;
|
2016-11-16 16:57:36 -03:00
|
|
|
$scope.isCordova = isCordova;
|
2016-10-28 12:07:59 -04:00
|
|
|
|
2016-12-27 15:19:53 -03:00
|
|
|
$scope.appName = appConfigService.nameCase;
|
2016-08-15 17:42:04 -03:00
|
|
|
$scope.currentLanguageName = uxLanguage.getCurrentLanguageName();
|
|
|
|
|
$scope.feeOpts = feeService.feeOpts;
|
|
|
|
|
$scope.currentFeeLevel = feeService.getCurrentFeeLevel();
|
2016-12-27 15:19:53 -03:00
|
|
|
|
2016-08-31 16:41:53 -03:00
|
|
|
$scope.wallets = profileService.getWallets();
|
2016-12-27 15:19:53 -03:00
|
|
|
|
2016-12-12 18:28:58 -03:00
|
|
|
configService.whenAvailable(function(config) {
|
|
|
|
|
$scope.unitName = config.wallet.settings.unitName;
|
|
|
|
|
$scope.selectedAlternative = {
|
|
|
|
|
name: config.wallet.settings.alternativeName,
|
|
|
|
|
isoCode: config.wallet.settings.alternativeIsoCode
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
$scope.bitpayCardEnabled = config.bitpayCard.enabled;
|
|
|
|
|
$scope.glideraEnabled = config.glidera.enabled && !isWindowsPhoneApp;
|
2017-01-25 11:13:18 -03:00
|
|
|
$scope.coinbaseEnabled = config.coinbaseV2 && !isWindowsPhoneApp;
|
2016-12-12 18:28:58 -03:00
|
|
|
|
|
|
|
|
if ($scope.bitpayCardEnabled) {
|
2017-01-27 17:54:41 -03:00
|
|
|
bitpayCardService.getCards(function(err, cards) {
|
2016-12-12 18:28:58 -03:00
|
|
|
if (err) $log.error(err);
|
2017-01-05 18:16:24 -05:00
|
|
|
$scope.bitpayCards = cards && cards.length > 0;
|
2016-12-27 15:19:53 -03:00
|
|
|
});
|
2016-12-12 18:28:58 -03:00
|
|
|
}
|
2016-11-21 11:36:41 -03:00
|
|
|
|
2016-12-12 18:28:58 -03:00
|
|
|
if ($scope.glideraEnabled) {
|
|
|
|
|
storageService.getGlideraToken(glideraService.getEnvironment(), function(err, token) {
|
|
|
|
|
if (err) $log.error(err);
|
|
|
|
|
$scope.glideraToken = token;
|
|
|
|
|
});
|
|
|
|
|
}
|
2016-11-22 12:35:51 -03:00
|
|
|
|
2016-12-08 13:06:01 -03:00
|
|
|
if ($scope.coinbaseEnabled) {
|
|
|
|
|
coinbaseService.setCredentials();
|
2017-01-13 01:37:13 -03:00
|
|
|
coinbaseService.getStoredToken(function(at) {
|
|
|
|
|
$scope.coinbaseToken = at;
|
2016-12-08 13:06:01 -03:00
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2016-12-12 18:28:58 -03:00
|
|
|
});
|
2016-08-15 17:42:04 -03:00
|
|
|
};
|
|
|
|
|
|
2016-12-12 17:29:11 -03:00
|
|
|
$scope.openExternalLink = function() {
|
|
|
|
|
var url = 'https://help.bitpay.com/bitpay-app';
|
|
|
|
|
var optIn = true;
|
|
|
|
|
var title = gettextCatalog.getString('BitPay Help Center');
|
2016-12-28 16:29:45 -03:00
|
|
|
var message = gettextCatalog.getString('Help and support information is available at the BitPay Help Center website.');
|
2016-12-12 17:29:11 -03:00
|
|
|
var okText = gettextCatalog.getString('Open Help Center');
|
|
|
|
|
var cancelText = gettextCatalog.getString('Go Back');
|
2016-10-12 15:29:06 -04:00
|
|
|
externalLinkService.open(url, optIn, title, message, okText, cancelText);
|
2016-10-07 11:35:43 -04:00
|
|
|
};
|
|
|
|
|
|
2016-09-30 13:19:29 -03:00
|
|
|
$scope.$on("$ionicView.beforeEnter", function(event, data) {
|
2016-09-21 17:12:25 -03:00
|
|
|
updateConfig();
|
|
|
|
|
});
|
|
|
|
|
|
2016-08-15 17:42:04 -03:00
|
|
|
});
|