89 lines
2.8 KiB
JavaScript
89 lines
2.8 KiB
JavaScript
'use strict';
|
|
angular.module('copayApp.controllers').controller('tourController',
|
|
function($scope, $state, $log, $timeout, $filter, ongoingProcess, platformInfo, profileService, rateService, popupService, gettextCatalog) {
|
|
|
|
var isCordova = platformInfo.isCordova;
|
|
var isWP = platformInfo.isWP;
|
|
var usePushNotifications = isCordova && !isWP;
|
|
|
|
$scope.data = {
|
|
index: 0
|
|
};
|
|
|
|
$scope.options = {
|
|
loop: false,
|
|
effect: 'flip',
|
|
speed: 500,
|
|
spaceBetween: 100
|
|
}
|
|
|
|
$scope.$on("$ionicSlides.sliderInitialized", function(event, data) {
|
|
$scope.slider = data.slider;
|
|
});
|
|
|
|
$scope.$on("$ionicSlides.slideChangeStart", function(event, data) {
|
|
$scope.data.index = data.slider.activeIndex;
|
|
});
|
|
|
|
$scope.$on("$ionicSlides.slideChangeEnd", function(event, data) {});
|
|
|
|
$scope.$on("$ionicView.enter", function(event, data) {
|
|
rateService.whenAvailable(function() {
|
|
var localCurrency = 'USD';
|
|
var btcAmount = 1;
|
|
var rate = rateService.toFiat(btcAmount * 1e8, localCurrency);
|
|
$scope.localCurrencySymbol = '$';
|
|
$scope.localCurrencyPerBtc = $filter('formatFiatAmount')(parseFloat(rate.toFixed(2), 10));
|
|
$timeout(function() {
|
|
$scope.$apply();
|
|
})
|
|
});
|
|
});
|
|
|
|
var retryCount = 0;
|
|
$scope.createDefaultWallet = function() {
|
|
ongoingProcess.set('creatingWallet', true);
|
|
profileService.createDefaultWallet(function(err, walletClient) {
|
|
if (err) {
|
|
$log.warn(err);
|
|
|
|
return $timeout(function() {
|
|
$log.warn('Retrying to create default wallet.....:' + ++retryCount);
|
|
if (retryCount > 3) {
|
|
ongoingProcess.set('creatingWallet', false);
|
|
popupService.showAlert(
|
|
gettextCatalog.getString('Cannot Create Wallet'), err,
|
|
function() {
|
|
retryCount = 0;
|
|
return $scope.createDefaultWallet();
|
|
}, gettextCatalog.getString('Retry'));
|
|
} else {
|
|
return $scope.createDefaultWallet();
|
|
}
|
|
}, 2000);
|
|
};
|
|
ongoingProcess.set('creatingWallet', false);
|
|
var wallet = walletClient;
|
|
var walletId = wallet.credentials.walletId;
|
|
if (!usePushNotifications) {
|
|
$state.go('onboarding.backupRequest', {
|
|
walletId: walletId
|
|
});
|
|
} else {
|
|
$state.go('onboarding.notifications', {
|
|
walletId: walletId
|
|
});
|
|
}
|
|
});
|
|
};
|
|
|
|
$scope.goBack = function() {
|
|
if ($scope.data.index != 0) $scope.slider.slidePrev();
|
|
else $state.go('onboarding.welcome');
|
|
}
|
|
|
|
$scope.slideNext = function() {
|
|
if ($scope.data.index != 2) $scope.slider.slideNext();
|
|
else $state.go('onboarding.welcome');
|
|
}
|
|
});
|