Wallet/src/js/services/externalLinkService.js
2016-12-12 17:29:11 -03:00

36 lines
1,011 B
JavaScript

'use strict';
angular.module('copayApp.services').service('externalLinkService', function(platformInfo, nodeWebkitService, popupService, gettextCatalog, $window, $log, $timeout) {
var _restoreHandleOpenURL = function(old) {
$timeout(function() {
$window.handleOpenURL = old;
}, 500);
};
this.open = function(url, optIn, title, message, okText, cancelText) {
var old = $window.handleOpenURL;
$window.handleOpenURL = function(url) {
// Ignore external URLs
$log.debug('Skip: ' + url);
};
if (platformInfo.isNW) {
nodeWebkitService.openExternalLink(url);
_restoreHandleOpenURL(old);
} else {
if (optIn) {
var openBrowser = function(res) {
if (res) window.open(url, '_system');
_restoreHandleOpenURL(old);
};
popupService.showConfirm(title, message, okText, cancelText, openBrowser);
} else {
window.open(url, '_system');
_restoreHandleOpenURL(old);
}
}
};
});