Merge pull request #3 from gabrielbazan7/ref/allowNotif

onboarding allow push notifications
This commit is contained in:
Matias Alejo Garcia 2016-08-29 18:45:23 -03:00 committed by GitHub
commit d2b209c75a
8 changed files with 38 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,13 @@
'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) {
var usePushNotifications = platformInfo.isCordova && !isWP;
$scope.skip = function() {
if (!usePushNotifications) $state.go('onboarding.backupRequest');
else $state.go('onboarding.notifications');
}
$scope.save = function(form) {
var wallet = profileService.getWallet($stateParams.walletId);
@ -10,7 +17,8 @@ angular.module('copayApp.controllers').controller('collectEmailController', func
email: email,
}, function(err) {
if (err) $log.warn(err);
$state.go('onboarding.notifications');
if (!usePushNotifications) $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;
@ -94,7 +98,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)
});
});
@ -102,7 +106,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);
}
});
@ -154,7 +158,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();
@ -201,9 +205,6 @@ angular.module('copayApp.services')
}
bindWallets(function() {
if (usePushNotifications)
root.pushNotificationsInit();
root.isBound = true;
lodash.each(root._queue, function(x) {
@ -219,6 +220,8 @@ angular.module('copayApp.services')
if (!val) {
return cb(new Error('NONAGREEDDISCLAIMER: Non agreed disclaimer'));
}
if (usePushNotifications)
root.pushNotificationsInit();
$rootScope.$emit('disclaimerAccepted');
return cb();
});
@ -703,10 +706,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;