onboarding allow push notifications

This commit is contained in:
Gabriel Bazán 2016-08-29 11:56:31 -03:00
commit effbd098a6
8 changed files with 36 additions and 28 deletions

View file

@ -1,7 +1,7 @@
<ion-view ng-controller="collectEmailController" ng-init="init()">
<ion-view ng-controller="collectEmailController">
<ion-nav-bar class="bar-stable">
<ion-nav-buttons side="secondary">
<button class="button no-border" href ui-sref="onboarding.notifications">
<button class="button no-border" ng-click="skip()">
Skip
</button>
</ion-nav-buttons>

View file

@ -1,5 +1,5 @@
<ion-view>
<ion-content ng-controller="notificationsController" >
<ion-content ng-controller="notificationsController">
<div class="text-center">
<h1 translate>
Push Notifications

View file

@ -1,6 +1,6 @@
'use strict';
angular.module('copayApp.controllers').controller('backupRequestController', function($rootScope, $scope, $state, $ionicPopup, $stateParams, profileService, walletService) {
angular.module('copayApp.controllers').controller('backupRequestController', function($scope, $state, $ionicPopup) {
$scope.openPopup = function() {
var backupLaterPopup = $ionicPopup.show({

View file

@ -1,6 +1,6 @@
'use strict';
angular.module('copayApp.controllers').controller('backupWarningController', function($rootScope, $scope, $state, $ionicPopup, $stateParams, profileService, walletService) {
angular.module('copayApp.controllers').controller('backupWarningController', function($scope, $state, $ionicPopup, profileService) {
$scope.openPopup = function() {
var backupWarningPopup = $ionicPopup.show({

View file

@ -1,6 +1,11 @@
'use strict';
angular.module('copayApp.controllers').controller('collectEmailController', function($rootScope, $scope, $state, $stateParams, $timeout, $ionicModal, profileService, walletService) {
angular.module('copayApp.controllers').controller('collectEmailController', function($scope, $state, $stateParams, profileService, walletService, platformInfo) {
$scope.skip = function() {
if (!platformInfo.isCordova) $state.go('onboarding.backupRequest');
else $state.go('onboarding.notifications');
}
$scope.save = function(form) {
var wallet = profileService.getWallet($stateParams.walletId);
@ -10,7 +15,8 @@ angular.module('copayApp.controllers').controller('collectEmailController', func
email: email,
}, function(err) {
if (err) $log.warn(err);
$state.go('onboarding.notifications');
if (!platformInfo.isCordova) $state.go('onboarding.backupRequest');
else $state.go('onboarding.notifications');
});
};

View file

@ -1,11 +1,9 @@
'use strict';
angular.module('copayApp.controllers').controller('notificationsController', function($scope, $state, platformInfo) {
if (!platformInfo.isCordova) $state.go('onboarding.backupRequest');
angular.module('copayApp.controllers').controller('notificationsController', function($scope, $state, profileService) {
$scope.allowNotif = function() {
// T O D O
profileService.pushNotificationsInit();
$state.go('onboarding.backupRequest');
}

View file

@ -1,6 +1,6 @@
'use strict';
angular.module('copayApp.controllers').controller('tourController',
function($scope, $stateParams, $state, $log, $timeout, ongoingProcess, storageService, profileService) {
function($scope, $state, $log, $timeout, ongoingProcess, profileService) {
$scope.init = function() {

View file

@ -16,19 +16,23 @@ angular.module('copayApp.services')
root.profile = null;
Object.defineProperty(root, "focusedClient", {
get: function () { throw "focusedClient is not used any more" },
set: function () { throw "focusedClient is not used any more" }
Object.defineProperty(root, "focusedClient", {
get: function() {
throw "focusedClient is not used any more"
},
set: function() {
throw "focusedClient is not used any more"
}
});
root.wallet = {}; // decorated version of client
root.wallet = {}; // decorated version of client
root.updateWalletSettings = function(wallet) {
var defaults = configService.getDefaults();
var config = configService.getSync();
wallet.usingCustomBWS = config.bwsFor[wallet.id] && (config.bwsFor[wallet.id] != defaults.bws.url);
wallet.usingCustomBWS = config.bwsFor[wallet.id] && (config.bwsFor[wallet.id] != defaults.bws.url);
wallet.name = config.aliasFor[wallet.id] || wallet.credentials.walletName;
wallet.color = config.colorFor[wallet.id] || '#4A90E2';
@ -69,7 +73,7 @@ angular.module('copayApp.services')
// notification?
// TODO (put this in wallet ViewModel)
// TODO (put this in wallet ViewModel)
if (wallet.cachedStatus)
wallet.cachedStatus.isValid = false;
@ -99,7 +103,7 @@ angular.module('copayApp.services')
}
wallet.setNotificationsInterval(UPDATE_PERIOD);
wallet.openWallet(function(err) {
if (wallet.status !== true)
if (wallet.status !== true)
$log.log('Wallet + ' + walletId + ' status:' + wallet.status)
});
});
@ -107,7 +111,7 @@ angular.module('copayApp.services')
$rootScope.$on('Local/SettingsUpdated', function(e, walletId) {
if (!walletId || walletId == wallet.id) {
$log.debug('Updating settings for wallet:' + wallet.id);
$log.debug('Updating settings for wallet:' + wallet.id);
root.updateWalletSettings(wallet);
}
});
@ -159,7 +163,7 @@ angular.module('copayApp.services')
if (!credentials.walletId || !credentials.m)
return cb('bindWallet should receive credentials JSON');
// Create the client
// Create the client
var getBWSURL = function(walletId) {
var config = configService.getSync();
var defaults = configService.getDefaults();
@ -206,9 +210,6 @@ angular.module('copayApp.services')
}
bindWallets(function() {
if (usePushNotifications)
root.pushNotificationsInit();
root.isBound = true;
lodash.each(root._queue, function(x) {
@ -224,6 +225,8 @@ angular.module('copayApp.services')
if (!val) {
return cb(new Error('NONAGREEDDISCLAIMER: Non agreed disclaimer'));
}
if (usePushNotifications)
root.pushNotificationsInit();
$rootScope.$emit('disclaimerAccepted');
return cb();
});
@ -716,10 +719,11 @@ angular.module('copayApp.services')
ret = lodash.filter(ret, function(w) {
return w.isComplete();
});
} else {
}
} else {}
return lodash.sortBy(ret, [ function(x) { return x.isComplete(); }, 'createdOn']);
return lodash.sortBy(ret, [function(x) {
return x.isComplete();
}, 'createdOn']);
};
return root;