2014-04-07 20:54:38 -07:00
|
|
|
'use strict';
|
|
|
|
|
2014-12-04 12:59:02 -08:00
|
|
|
var LS = require('../js/plugins/LocalStorage');
|
2014-12-04 10:45:50 -08:00
|
|
|
var ls = new LS();
|
|
|
|
|
2014-04-07 20:54:38 -07:00
|
|
|
//Setting up route
|
|
|
|
angular
|
2014-10-16 07:25:45 -07:00
|
|
|
.module('copayApp')
|
|
|
|
.config(function($routeProvider) {
|
2014-04-07 20:54:38 -07:00
|
|
|
|
2014-10-16 07:25:45 -07:00
|
|
|
$routeProvider
|
|
|
|
.when('/', {
|
|
|
|
templateUrl: 'views/home.html',
|
|
|
|
})
|
|
|
|
.when('/createProfile', {
|
|
|
|
templateUrl: 'views/createProfile.html',
|
|
|
|
})
|
|
|
|
.when('/unsupported', {
|
|
|
|
templateUrl: 'views/unsupported.html'
|
|
|
|
})
|
2014-11-01 17:34:03 -07:00
|
|
|
.when('/confirmed', {
|
|
|
|
template: " ", // just fire controller
|
|
|
|
controller: 'EmailConfirmationController',
|
|
|
|
})
|
2014-12-09 06:52:01 -08:00
|
|
|
// Payment intents come here.
|
|
|
|
.when('/uri-payment/:data', {
|
|
|
|
template: " ", // just fire controller
|
|
|
|
controller: 'paymentUriController',
|
|
|
|
})
|
2014-12-08 13:26:18 -08:00
|
|
|
.when('/selectWalletForPayment', {
|
|
|
|
template: " ", // just fire controller
|
|
|
|
controller: 'walletForPaymentController',
|
2014-11-03 13:02:21 -08:00
|
|
|
logged: true
|
|
|
|
})
|
2014-10-16 07:25:45 -07:00
|
|
|
.when('/join', {
|
|
|
|
templateUrl: 'views/join.html',
|
|
|
|
logged: true
|
|
|
|
})
|
|
|
|
.when('/import', {
|
|
|
|
templateUrl: 'views/import.html',
|
|
|
|
logged: true
|
|
|
|
})
|
2014-10-31 15:39:01 -07:00
|
|
|
.when('/importProfile', {
|
|
|
|
templateUrl: 'views/importProfile.html',
|
|
|
|
})
|
2014-10-16 07:25:45 -07:00
|
|
|
.when('/create', {
|
|
|
|
templateUrl: 'views/create.html',
|
|
|
|
logged: true
|
|
|
|
})
|
|
|
|
.when('/copayers', {
|
|
|
|
templateUrl: 'views/copayers.html',
|
|
|
|
logged: true
|
|
|
|
})
|
2014-10-31 07:49:52 -07:00
|
|
|
.when('/homeWallet', {
|
|
|
|
templateUrl: 'views/homeWallet.html',
|
2014-11-29 19:31:17 -08:00
|
|
|
walletShouldBeComplete: true,
|
2014-10-31 07:49:52 -07:00
|
|
|
logged: true
|
|
|
|
})
|
2014-10-16 07:25:45 -07:00
|
|
|
.when('/receive', {
|
2014-10-30 10:13:40 -07:00
|
|
|
templateUrl: 'views/receive.html',
|
2014-11-29 19:31:17 -08:00
|
|
|
walletShouldBeComplete: true,
|
2014-10-16 07:25:45 -07:00
|
|
|
logged: true
|
|
|
|
})
|
|
|
|
.when('/history', {
|
2014-10-30 10:13:40 -07:00
|
|
|
templateUrl: 'views/history.html',
|
2014-11-29 19:31:17 -08:00
|
|
|
walletShouldBeComplete: true,
|
2014-10-16 07:25:45 -07:00
|
|
|
logged: true
|
|
|
|
})
|
|
|
|
.when('/send', {
|
|
|
|
templateUrl: 'views/send.html',
|
2014-11-29 19:31:17 -08:00
|
|
|
walletShouldBeComplete: true,
|
2014-10-16 07:25:45 -07:00
|
|
|
logged: true
|
|
|
|
})
|
|
|
|
.when('/more', {
|
|
|
|
templateUrl: 'views/more.html',
|
2014-11-29 19:31:17 -08:00
|
|
|
walletShouldBeComplete: true,
|
2014-10-16 07:25:45 -07:00
|
|
|
logged: true
|
|
|
|
})
|
|
|
|
.when('/settings', {
|
|
|
|
templateUrl: 'views/settings.html',
|
2014-11-29 19:31:17 -08:00
|
|
|
walletShouldBeComplete: true,
|
2014-10-16 07:25:45 -07:00
|
|
|
logged: false
|
|
|
|
})
|
|
|
|
.when('/warning', {
|
|
|
|
templateUrl: 'views/warning.html',
|
|
|
|
logged: true
|
|
|
|
})
|
2014-11-11 11:01:33 -08:00
|
|
|
.when('/profile', {
|
|
|
|
templateUrl: 'views/profile.html',
|
|
|
|
logged: true
|
2014-10-16 07:25:45 -07:00
|
|
|
});
|
2014-11-04 06:30:44 -08:00
|
|
|
|
|
|
|
if (config.developmentFeatures) {
|
|
|
|
$routeProvider.when('/devLogin/:mail/:password', {
|
2014-11-04 05:58:32 -08:00
|
|
|
templateUrl: 'views/devLogin.html',
|
|
|
|
logged: false
|
2014-10-16 07:25:45 -07:00
|
|
|
});
|
2014-11-04 06:30:44 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
$routeProvider.otherwise({
|
|
|
|
templateUrl: 'views/errors/404.html',
|
|
|
|
title: 'Error'
|
|
|
|
});
|
2014-04-07 20:54:38 -07:00
|
|
|
});
|
|
|
|
|
|
|
|
//Setting HTML5 Location Mode
|
|
|
|
angular
|
2014-10-16 07:25:45 -07:00
|
|
|
.module('copayApp')
|
|
|
|
.config(function($locationProvider, $idleProvider, $keepaliveProvider) {
|
|
|
|
$locationProvider
|
|
|
|
.html5Mode(false)
|
|
|
|
.hashPrefix('!');
|
|
|
|
// IDLE timeout
|
|
|
|
var timeout = config.wallet.idleDurationMin * 60 || 300;
|
|
|
|
$idleProvider.idleDuration(timeout); // in seconds
|
|
|
|
$idleProvider.warningDuration(40); // in seconds
|
|
|
|
$keepaliveProvider.interval(30); // in seconds
|
|
|
|
})
|
2014-12-07 09:12:58 -08:00
|
|
|
.run(function($rootScope, $location, $idle, gettextCatalog, uriHandler, isCordova) {
|
2014-12-07 07:40:59 -08:00
|
|
|
|
2014-10-16 07:25:45 -07:00
|
|
|
gettextCatalog.currentLanguage = config.defaultLanguage;
|
2014-12-07 07:40:59 -08:00
|
|
|
|
|
|
|
// Register URI handler, not for mobileApp
|
2014-12-07 09:12:58 -08:00
|
|
|
if (!isCordova) {
|
2014-11-25 15:10:42 -08:00
|
|
|
$idle.watch();
|
|
|
|
uriHandler.register();
|
|
|
|
}
|
2014-12-02 05:40:24 -08:00
|
|
|
|
2014-12-07 07:40:59 -08:00
|
|
|
$rootScope.$on('$routeChangeStart', function(event, next, current) {
|
2014-12-09 06:52:01 -08:00
|
|
|
|
2014-12-04 10:45:50 -08:00
|
|
|
if (!ls || ls.length < 1) {
|
2014-10-16 07:25:45 -07:00
|
|
|
$location.path('unsupported');
|
|
|
|
} else {
|
|
|
|
if (!$rootScope.iden && next.logged) {
|
|
|
|
$idle.unwatch();
|
|
|
|
$location.path('/');
|
|
|
|
}
|
2014-12-09 06:52:01 -08:00
|
|
|
if ($rootScope.wallet && !$rootScope.wallet.isComplete()
|
|
|
|
&& next.walletShouldBeComplete) {
|
2014-11-29 13:35:48 -08:00
|
|
|
$location.path('/copayers');
|
|
|
|
}
|
2014-08-12 12:26:15 -07:00
|
|
|
}
|
2014-10-16 07:25:45 -07:00
|
|
|
});
|
|
|
|
})
|
|
|
|
.config(function($compileProvider) {
|
|
|
|
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|file|tel|chrome-extension|resource):/);
|
2014-04-07 20:54:38 -07:00
|
|
|
});
|