copay/js/routes.js

95 lines
2.4 KiB
JavaScript
Raw Normal View History

2014-04-07 20:54:38 -07:00
'use strict';
//Setting up route
angular
.module('copayApp')
2014-04-07 20:54:38 -07:00
.config(function($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'views/home.html',
2014-04-18 15:08:01 -07:00
validate: false
2014-04-07 20:54:38 -07:00
})
.when('/open', {
templateUrl: 'views/open.html',
validate: false
})
.when('/join', {
templateUrl: 'views/join.html',
2014-04-18 15:08:01 -07:00
validate: false
2014-04-07 20:54:38 -07:00
})
2014-04-25 13:34:38 -07:00
.when('/import', {
templateUrl: 'views/import.html',
2014-04-25 13:34:38 -07:00
validate: false
})
2014-04-16 13:07:14 -07:00
.when('/setup', {
templateUrl: 'views/setup.html',
2014-04-18 15:08:01 -07:00
validate: false
2014-04-16 13:07:14 -07:00
})
2014-07-24 11:31:07 -07:00
.when('/copayers', {
templateUrl: 'views/copayers.html',
validate: true
})
.when('/addresses', {
templateUrl: 'views/addresses.html',
2014-04-21 07:32:51 -07:00
validate: true
2014-04-07 20:54:38 -07:00
})
.when('/transactions', {
templateUrl: 'views/transactions.html',
2014-04-18 15:08:01 -07:00
validate: true
2014-04-07 20:54:38 -07:00
})
.when('/send', {
templateUrl: 'views/send.html',
2014-04-18 15:08:01 -07:00
validate: true
2014-04-07 20:54:38 -07:00
})
.when('/backup', {
templateUrl: 'views/backup.html',
2014-04-18 15:08:01 -07:00
validate: true
2014-04-07 20:54:38 -07:00
})
2014-05-13 10:19:37 -07:00
.when('/settings', {
templateUrl: 'views/settings.html',
2014-05-13 10:19:37 -07:00
validate: false
})
2014-05-12 08:00:25 -07:00
.when('/unsupported', {
templateUrl: 'views/unsupported.html'
2014-05-12 08:00:25 -07:00
})
.when('/uri-payment/:data', {
templateUrl: 'views/uri-payment.html'
2014-07-01 15:35:15 -07:00
})
2014-04-07 20:54:38 -07:00
.otherwise({
templateUrl: 'views/errors/404.html',
title: 'Error'
2014-04-07 20:54:38 -07:00
});
});
//Setting HTML5 Location Mode
angular
.module('copayApp')
.config(function($locationProvider, $idleProvider) {
2014-04-07 20:54:38 -07:00
$locationProvider
2014-07-29 10:13:21 -07:00
.html5Mode(false)
.hashPrefix('!');
// IDLE timeout
$idleProvider.idleDuration(15 * 60); // in seconds
$idleProvider.warningDuration(10); // in seconds
})
2014-07-31 18:49:11 -07:00
.run(function($rootScope, $location, $idle) {
$idle.watch();
2014-04-18 15:08:01 -07:00
$rootScope.$on('$routeChangeStart', function(event, next, current) {
2014-05-12 08:00:25 -07:00
if (!util.supports.data) {
$location.path('unsupported');
} else {
2014-05-12 08:00:25 -07:00
if ((!$rootScope.wallet || !$rootScope.wallet.id) && next.validate) {
2014-07-31 18:49:11 -07:00
$idle.unwatch();
$location.path('/');
2014-05-12 08:00:25 -07:00
}
2014-07-24 11:31:07 -07:00
if ($rootScope.wallet && !$rootScope.wallet.isReady()) {
$location.path('/copayers');
}
}
});
2014-05-14 13:20:03 -07:00
})
.config(function($compileProvider) {
2014-05-16 13:35:39 -07:00
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|file|tel|chrome-extension|resource):/);
2014-04-07 20:54:38 -07:00
});