Wallet/src/js/controllers/bitpayCardIntro.js

76 lines
2.6 KiB
JavaScript
Raw Normal View History

2016-10-04 12:06:06 -03:00
'use strict';
2016-10-12 09:38:41 -03:00
angular.module('copayApp.controllers').controller('bitpayCardIntroController', function($scope, $log, $state, $ionicHistory, storageService, externalLinkService, bitpayCardService, gettextCatalog, popupService) {
2016-10-04 12:06:06 -03:00
var checkOtp = function(obj, cb) {
if (obj.otp) {
var msg = gettextCatalog.getString('Enter Two Factor for BitPay Card');
popupService.showPrompt(null, msg, null, function(res) {
cb(res);
});
} else {
cb();
}
};
2016-10-04 12:06:06 -03:00
$scope.$on("$ionicView.beforeEnter", function(event, data) {
2016-10-06 19:23:39 -03:00
if (data.stateParams && data.stateParams.secret) {
var obj = {
secret: data.stateParams.secret,
email: data.stateParams.email,
otp: data.stateParams.otp
};
checkOtp(obj, function(otp) {
obj.otp = otp;
bitpayCardService.bitAuthPair(obj, function(err, data) {
if (err) {
popupService.showAlert(null, err);
return;
2016-10-06 19:23:39 -03:00
}
var title = gettextCatalog.getString('Add BitPay Card Account?');
var msg = gettextCatalog.getString('Would you like to add this account ({{email}}) to your wallet?', {email: obj.email});
var ok = gettextCatalog.getString('Add Account');
var cancel = gettextCatalog.getString('Go back');
popupService.showConfirm(title, msg, ok, cancel, function(res) {
if (res) {
// Set flag for nextStep
storageService.setNextStep('BitpayCard', true, function(err) {});
// Save data
bitpayCardService.setBitpayDebitCards(data, function(err) {
if (err) return;
$ionicHistory.nextViewOptions({
disableAnimate: true
});
2016-10-12 09:38:41 -03:00
$state.go('tabs.home').then(function() {
if (data.cards[0]) {
2016-10-11 14:50:35 -03:00
$state.transitionTo('tabs.bitpayCard', {id: data.cards[0].id});
2016-10-12 09:38:41 -03:00
}
});
});
}
});
2016-10-06 19:23:39 -03:00
});
});
} else {
2016-10-11 14:50:35 -03:00
bitpayCardService.getCredentials(function(err, credentials) {
if (err) popupService.showAlert(null, err);
2016-10-11 14:50:35 -03:00
else $log.info('BitPay Debit Card Credentials: Ok.');
2016-10-07 19:21:46 -03:00
});
2016-10-06 19:23:39 -03:00
}
2016-10-04 12:06:06 -03:00
});
$scope.bitPayCardInfo = function() {
var url = 'https://bitpay.com/visa/faq';
externalLinkService.open(url);
};
2016-10-04 12:06:06 -03:00
$scope.orderBitPayCard = function() {
var url = 'https://bitpay.com/visa/get-started';
2016-10-13 20:11:02 -03:00
externalLinkService.open(url);
2016-10-04 12:06:06 -03:00
};
2016-10-06 19:23:39 -03:00
$scope.connectBitPayCard = function() {
var url = 'https://bitpay.com/visa/dashboard/add-to-bitpay-wallet-confirm';
2016-10-13 20:11:02 -03:00
externalLinkService.open(url);
2016-10-06 19:23:39 -03:00
};
2016-10-04 12:06:06 -03:00
});