diff --git a/src/js/controllers/preferencesLanguage.js b/src/js/controllers/preferencesLanguage.js index 81db570a2..7efdbb295 100644 --- a/src/js/controllers/preferencesLanguage.js +++ b/src/js/controllers/preferencesLanguage.js @@ -1,7 +1,7 @@ 'use strict'; angular.module('copayApp.controllers').controller('preferencesLanguageController', - function($scope, $log, $ionicHistory, gettextCatalog, configService, profileService, uxLanguage, walletService, externalLinkService) { + function($scope, $log, $ionicHistory, $state, gettextCatalog, configService, profileService, uxLanguage, walletService, externalLinkService) { $scope.availableLanguages = uxLanguage.getLanguages(); @@ -18,19 +18,18 @@ angular.module('copayApp.controllers').controller('preferencesLanguageController } }; + uxLanguage._set(newLang); configService.set(opts, function(err) { if (err) $log.warn(err); - - $ionicHistory.goBack(); - uxLanguage.init(function() { - walletService.updateRemotePreferences(profileService.getWallets(), {}, function() { - $log.debug('Remote preferences saved'); - }); + walletService.updateRemotePreferences(profileService.getWallets(), {}, function() { + $log.debug('Remote preferences saved'); }); }); + + $ionicHistory.goBack(); }; - $scope.$on("$ionicView.enter", function(event, data) { + $scope.$on("$ionicView.beforeEnter", function(event, data) { $scope.currentLanguage = uxLanguage.getCurrentLanguage(); }); }); diff --git a/src/js/controllers/tab-settings.js b/src/js/controllers/tab-settings.js index ed23075e2..a0988110b 100644 --- a/src/js/controllers/tab-settings.js +++ b/src/js/controllers/tab-settings.js @@ -3,8 +3,6 @@ angular.module('copayApp.controllers').controller('tabSettingsController', function($scope, $window, $ionicModal, $log, lodash, uxLanguage, platformInfo, profileService, feeService, configService, externalLinkService, bitpayCardService, storageService, glideraService) { var updateConfig = function() { - - var config = configService.getSync(); var isCordova = platformInfo.isCordova; var isWP = platformInfo.isWP; var isWindowsPhoneApp = platformInfo.isWP && isCordova; @@ -13,21 +11,39 @@ angular.module('copayApp.controllers').controller('tabSettingsController', funct $scope.isCordova = isCordova; $scope.appName = $window.appConfig.nameCase; - - $scope.unitName = config.wallet.settings.unitName; $scope.currentLanguageName = uxLanguage.getCurrentLanguageName(); - $scope.selectedAlternative = { - name: config.wallet.settings.alternativeName, - isoCode: config.wallet.settings.alternativeIsoCode - }; $scope.feeOpts = feeService.feeOpts; $scope.currentFeeLevel = feeService.getCurrentFeeLevel(); - + $scope.wallets = profileService.getWallets(); + + 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.bitpayCardEnabled = config.bitpayCard.enabled; + $scope.glideraEnabled = config.glidera.enabled && !isWindowsPhoneApp; - $scope.glideraEnabled = config.glidera.enabled && !isWindowsPhoneApp; + if ($scope.bitpayCardEnabled) { + bitpayCardService.getBitpayDebitCards(function(err, data) { + if (err) $log.error(err); + if (!lodash.isEmpty(data)) { + $scope.bitpayCards = true; + } + }); + } + + if ($scope.glideraEnabled) { + storageService.getGlideraToken(glideraService.getEnvironment(), function(err, token) { + if (err) $log.error(err); + $scope.glideraToken = token; + }); + } + + }); }; $scope.openExternalLink = function(url, optIn, title, message, okText, cancelText) { @@ -36,18 +52,6 @@ angular.module('copayApp.controllers').controller('tabSettingsController', funct $scope.$on("$ionicView.beforeEnter", function(event, data) { updateConfig(); - - bitpayCardService.getBitpayDebitCards(function(err, data) { - if (err) $log.error(err); - if (!lodash.isEmpty(data)) { - $scope.bitpayCards = true; - } - }); - - storageService.getGlideraToken(glideraService.getEnvironment(), function(err, token) { - if (err) $log.error(err); - $scope.glideraToken = token; - }); }); }); diff --git a/www/views/tab-settings.html b/www/views/tab-settings.html index ab01bf9b7..890fd8150 100644 --- a/www/views/tab-settings.html +++ b/www/views/tab-settings.html @@ -10,21 +10,21 @@ - Bitcoin Exchanges + {{'Bitcoin Exchanges' | translate}} - Address Book + {{'Address Book' | translate}} - Help & Support + {{'Help & Support' | translate }} @@ -33,31 +33,31 @@ - Send Feedback + {{'Send Feedback' | translate}} - Share {{appName}} + {{'Share'|translate}} {{appName}} -
Preferences
+
{{'Preferences' | translate}}
- Notifications + {{'Notifications' | translate}} - Language + {{'Language' | translate}} {{currentLanguageName|translate}} @@ -67,7 +67,7 @@ - Bitcoin Unit + {{'Bitcoin Unit' | translate}} {{unitName}} @@ -78,7 +78,7 @@ - Alternative Currency + {{'Alternative Currency' | translate}} {{selectedAlternative.name}} @@ -89,14 +89,14 @@ - Bitcoin Network Fee Policy + {{'Bitcoin Network Fee Policy' | translate}} {{feeOpts[currentFeeLevel]|translate}} -
Wallets & Integrations
+
{{'Wallets & Integrations' | translate}}
- - Incomplete + + {{'Incomplete' | translate}} @@ -139,7 +139,7 @@ - Tell a friend + {{'Tell a friend' | translate}} @@ -149,14 +149,14 @@ - Advanced + {{'Advanced' | translate}} - About {{appName}} + {{'About' | translate}} {{appName}}