commit
1e628d9704
7 changed files with 116 additions and 3 deletions
15
public/views/modals/receive-tips.html
Normal file
15
public/views/modals/receive-tips.html
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
<ion-modal-view ng-style="{opacity: '0.9'}" ng-controller="receiveTipsController">
|
||||
<ion-nav-bar class="bar-ligt">
|
||||
<ion-nav-buttons side="secondary">
|
||||
<button class="button" ng-click="close()">
|
||||
X
|
||||
</button>
|
||||
</ion-nav-buttons>
|
||||
</ion-nav-bar>
|
||||
<ion-content class="has-header">
|
||||
<div class="text-center">
|
||||
<h2>Receive bitcoin by sharing your address</h2>
|
||||
<h3>Other bitcoin users can scan this code to send you money</h3>
|
||||
</div>
|
||||
</ion-content>
|
||||
</ion-modal-view>
|
||||
15
public/views/modals/scan-tips.html
Normal file
15
public/views/modals/scan-tips.html
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
<ion-modal-view ng-style="{opacity: '0.9'}" ng-controller="scanTipsController">
|
||||
<ion-nav-bar class="bar-ligt">
|
||||
<ion-nav-buttons side="secondary">
|
||||
<button class="button" ng-click="close()">
|
||||
X
|
||||
</button>
|
||||
</ion-nav-buttons>
|
||||
</ion-nav-bar>
|
||||
<ion-content class="has-header">
|
||||
<div class="text-center">
|
||||
<h2>Scan the code to pay with bitcoin</h2>
|
||||
<h3>QR codes could also contain a bitcoin wallet invitation, or an URL</h3>
|
||||
</div>
|
||||
</ion-content>
|
||||
</ion-modal-view>
|
||||
10
src/js/controllers/modals/receiveTips.js
Normal file
10
src/js/controllers/modals/receiveTips.js
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
'use strict';
|
||||
|
||||
angular.module('copayApp.controllers').controller('receiveTipsController', function($scope, $log, storageService) {
|
||||
$scope.close = function() {
|
||||
$log.debug('Receive tips accepted');
|
||||
storageService.setReceiveTipsAccepted(true, function(err) {
|
||||
$scope.receiveTipsModal.hide();
|
||||
});
|
||||
}
|
||||
});
|
||||
11
src/js/controllers/modals/scanTips.js
Normal file
11
src/js/controllers/modals/scanTips.js
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
'use strict';
|
||||
|
||||
angular.module('copayApp.controllers').controller('scanTipsController', function($scope, $log, storageService) {
|
||||
$scope.close = function() {
|
||||
$log.debug('Scan tips accepted');
|
||||
storageService.setScanTipsAccepted(true, function(err) {
|
||||
$scope.$emit('TipsModalClosed', function() {});
|
||||
$scope.scanTipsModal.hide();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
'use strict';
|
||||
|
||||
angular.module('copayApp.controllers').controller('scannerController', function($scope, $timeout) {
|
||||
angular.module('copayApp.controllers').controller('scannerController', function($scope, $timeout, storageService, $ionicModal, platformInfo) {
|
||||
|
||||
// QR code Scanner
|
||||
var video;
|
||||
|
|
@ -73,6 +73,35 @@ angular.module('copayApp.controllers').controller('scannerController', function(
|
|||
};
|
||||
|
||||
$scope.init = function() {
|
||||
if (platformInfo.isCordova) scannerInit();
|
||||
else checkTips();
|
||||
};
|
||||
|
||||
function checkTips() {
|
||||
//TODO addapt tips to the new QR plugin (mobile)
|
||||
storageService.getScanTipsAccepted(function(err, accepted) {
|
||||
if (err) $log.warn(err);
|
||||
if (accepted) {
|
||||
scannerInit();
|
||||
return;
|
||||
}
|
||||
|
||||
$timeout(function() {
|
||||
$ionicModal.fromTemplateUrl('views/modals/scan-tips.html', {
|
||||
scope: $scope
|
||||
}).then(function(modal) {
|
||||
$scope.scanTipsModal = modal;
|
||||
$scope.scanTipsModal.show();
|
||||
});
|
||||
}, 1000);
|
||||
});
|
||||
};
|
||||
|
||||
$scope.$on('TipsModalClosed', function(event) {
|
||||
scannerInit();
|
||||
});
|
||||
|
||||
function scannerInit() {
|
||||
setScanner();
|
||||
$timeout(function() {
|
||||
if ($scope.beforeScan) {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
'use strict';
|
||||
|
||||
angular.module('copayApp.controllers').controller('tabReceiveController', function($scope, $timeout, $log, platformInfo, walletService, profileService, configService, lodash, gettextCatalog, popupService) {
|
||||
angular.module('copayApp.controllers').controller('tabReceiveController', function($scope, $timeout, $log, $ionicModal, storageService, platformInfo, walletService, profileService, configService, lodash, gettextCatalog, popupService) {
|
||||
|
||||
$scope.isCordova = platformInfo.isCordova;
|
||||
|
||||
|
|
@ -8,10 +8,27 @@ angular.module('copayApp.controllers').controller('tabReceiveController', functi
|
|||
$scope.wallets = profileService.getWallets({
|
||||
onlyComplete: true
|
||||
});
|
||||
$scope.isCordova = platformInfo.isCordova;
|
||||
$scope.isNW = platformInfo.isNW;
|
||||
$scope.isCordova = platformInfo.isCordova;
|
||||
if (!$scope.isCordova) $scope.checkTips();
|
||||
}
|
||||
|
||||
$scope.checkTips = function() {
|
||||
storageService.getReceiveTipsAccepted(function(err, accepted) {
|
||||
if (err) $log.warn(err);
|
||||
if (accepted) return;
|
||||
|
||||
$timeout(function() {
|
||||
$ionicModal.fromTemplateUrl('views/modals/receive-tips.html', {
|
||||
scope: $scope
|
||||
}).then(function(modal) {
|
||||
$scope.receiveTipsModal = modal;
|
||||
$scope.receiveTipsModal.show();
|
||||
});
|
||||
}, 1000);
|
||||
});
|
||||
};
|
||||
|
||||
$scope.$on('Wallet/Changed', function(event, wallet) {
|
||||
if (!wallet) {
|
||||
$log.debug('No wallet provided');
|
||||
|
|
|
|||
|
|
@ -349,6 +349,22 @@ angular.module('copayApp.services')
|
|||
});
|
||||
};
|
||||
|
||||
root.setScanTipsAccepted = function(val, cb) {
|
||||
storage.set('scanTips', val, cb);
|
||||
};
|
||||
|
||||
root.getScanTipsAccepted = function(cb) {
|
||||
storage.get('scanTips', cb);
|
||||
};
|
||||
|
||||
root.setReceiveTipsAccepted = function(val, cb) {
|
||||
storage.set('receiveTips', val, cb);
|
||||
};
|
||||
|
||||
root.getReceiveTipsAccepted = function(cb) {
|
||||
storage.get('receiveTips', cb);
|
||||
};
|
||||
|
||||
root.setAmazonGiftCards = function(network, gcs, cb) {
|
||||
storage.set('amazonGiftCards-' + network, gcs, cb);
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue