walnut_launchpad.html/js/app.js

143 lines
2.9 KiB
JavaScript

var app = angular.module('launchpad', ['ui.router', 'LocalStorageModule']);
app.config(['$stateProvider', '$urlRouterProvider', 'localStorageServiceProvider', function($stateProvider, $urlRouterProvider, localStorageServiceProvider){
localStorageServiceProvider.setPrefix('launchpad').setStorageType('sessionStorage');
$urlRouterProvider.otherwise('/splash-page');
$stateProvider
.state('splash-page', {
url: '/splash-page',
templateUrl: '/templates/splash-page.html',
})
.state('app',{
url: '/launchpad-',
views: {
'header': {
templateUrl: '/templates/partials/header.html',
controller: 'HomeController',
controllerAs: 'vm'
},
'menu': {
templateUrl: '/templates/partials/menu.html'
},
'content': {
templateUrl: '/templates/home.html'
},
'notifications': {
templateUrl: '/templates/partials/notifications.html'
}
}
})
.state('app.home', {
url: 'home',
views: {
'content@': {
templateUrl: 'templates/home.html',
controller: 'HomeController',
controllerAs: 'vm'
}
}
})
.state('app.sign-in', {
url: 'sign-in',
views: {
'content@': {
templateUrl: 'templates/sign-in.html',
controller: 'SignInController',
controllerAs: 'vm'
}
}
})
.state('app.bolt', {
url: 'bolt',
views: {
'content@': {
templateUrl: 'templates/bolt.html',
controller: 'BoltController'
}
}
})
.state('app.files', {
url: 'files',
views: {
'content@': {
templateUrl: 'templates/files.html',
controller: 'FilesController'
}
}
})
.state('app.contacts', {
url: 'contacts',
views: {
'content@': {
templateUrl: 'templates/contacts.html',
controller: 'ContactController'
}
}
})
.state('app.contacts.detail', {
url: '/:id',
/*
templateUrl: 'templates/partials/subscriber-detail.html',
controller: 'SubscriberDetailController'
*/
views: {
'detail@app.contacts': {
templateUrl: 'templates/partials/contact-detail.html',
controller: 'ContactDetailController'
}
}
})
.state('app.music', {
url: 'music',
views: {
'content@': {
templateUrl: 'templates/music.html',
controller: 'MusicController'
}
}
})
.state('app.email', {
url: 'email',
views: {
'content@': {
templateUrl: 'templates/email.html',
controller: 'EmailController'
}
}
})
.state('app.website', {
url: 'website',
views: {
'content@': {
templateUrl: 'templates/website.html',
controller: 'WebsiteController'
}
}
})
.state('app.dns', {
url: 'dns',
views: {
'content@': {
templateUrl: 'templates/dns.html',
controller: 'DnsController'
}
}
});
}]);
app.run(['$rootScope', '$location', 'Auth', function ($rootScope, $location, Auth) {
$rootScope.$on('$routeChangeStart', function (event) {
if (!Auth.isLoggedIn()) {
console.log('DENY');
event.preventDefault();
$location.path('/login');
}
else {
console.log('ALLOW');
$location.path('/home');
}
});
}]);