Wallet/src/js/services/go.js
Gustavo Maximiliano Cortez 70ba150e60
Adds scan tab. Fix grunt ios
2016-08-17 15:23:17 -03:00

76 lines
1.7 KiB
JavaScript

'use strict';
angular.module('copayApp.services').factory('go', function($window, $ionicSideMenuDelegate, $rootScope, $location, $state, $timeout, $log, profileService, platformInfo, nodeWebkit) {
var root = {};
root.openExternalLink = function(url, target) {
if (platformInfo.isNW) {
nodeWebkit.openExternalLink(url);
} else {
target = target || '_blank';
var ref = window.open(url, target, 'location=no');
}
};
root.is = function(name) {
return $state.is(name);
};
root.path = function(path, cb) {
$state.transitionTo(path)
.then(function() {
if (cb) return cb();
}, function() {
if (cb) return cb('animation in progress');
});
};
root.toggleLeftMenu = function() {
$ionicSideMenuDelegate.toggleLeft();
};
root.walletHome = function() {
var fc = profileService.focusedClient;
if (fc && !fc.isComplete()) {
$log.debug("Wallet not complete at startup... redirecting")
root.path('copayers');
} else {
root.path('tabs.home');
}
};
root.send = function() {
root.path('tabs.send');
};
root.addWallet = function() {
$state.transitionTo('add');
};
root.preferences = function() {
$state.transitionTo('preferences');
};
root.preferencesGlobal = function() {
$state.transitionTo('tabs.settings');
};
root.reload = function() {
$state.reload();
};
// Global go. This should be in a better place TODO
// We don't do a 'go' directive, to use the benefits of ng-touch with ng-click
$rootScope.go = function(path) {
root.path(path);
};
$rootScope.openExternalLink = function(url, target) {
root.openExternalLink(url, target);
};
return root;
});