mirror of https://github.com/BTCPrivate/copay.git
73 lines
1.7 KiB
JavaScript
73 lines
1.7 KiB
JavaScript
'use strict';
|
|
|
|
angular.module('copayApp.services').factory('go', function($window, $location) {
|
|
var root = {};
|
|
|
|
var hideSidebars = function() {
|
|
if (typeof document === 'undefined')
|
|
return;
|
|
|
|
// hack to hide sidebars and use ng-click (no href=)
|
|
var win = angular.element($window);
|
|
var elem = angular.element(document.querySelector('#off-canvas-wrap'))
|
|
elem.removeClass('move-right');
|
|
elem.removeClass('move-left');
|
|
};
|
|
|
|
var showSidebar = function(invert) {
|
|
if (typeof document === 'undefined')
|
|
return;
|
|
|
|
// hack to hide sidebars and use ng-click (no href=)
|
|
var win = angular.element($window);
|
|
var elem = angular.element(document.querySelector('#off-canvas-wrap'))
|
|
if (invert) {
|
|
elem.addClass('move-right');
|
|
}
|
|
else {
|
|
elem.addClass('move-left');
|
|
}
|
|
};
|
|
|
|
root.go = function(path) {
|
|
var parts = path.split('#');
|
|
$location.path(parts[0]);
|
|
if (parts[1])
|
|
$location.hash(parts[1]);
|
|
hideSidebars();
|
|
};
|
|
|
|
var pages = [
|
|
'/homeWallet',
|
|
'/receive',
|
|
'/send',
|
|
'/history'
|
|
];
|
|
|
|
var sidebarActive = false;
|
|
|
|
root.swipe = function(invert) {
|
|
var currentPage = $location.path();
|
|
var pageIndex;
|
|
if (!sidebarActive) {
|
|
pageIndex = invert ? pages.indexOf(currentPage) - 1 : pages.indexOf(currentPage) + 1;
|
|
}
|
|
else {
|
|
pageIndex = pages.indexOf(currentPage);
|
|
}
|
|
var page = pages[pageIndex];
|
|
|
|
if (pageIndex === -1 || pageIndex === 4) {
|
|
sidebarActive = true;
|
|
showSidebar(invert);
|
|
}
|
|
else if (pageIndex >= 0 && pageIndex <= 3) {
|
|
var goTo = pages[pageIndex];
|
|
sidebarActive = false;
|
|
root.go(goTo);
|
|
}
|
|
};
|
|
|
|
return root;
|
|
});
|