//= require ./functions //= require_tree ./modules //= require_self //= require ./locale/translations var dependencies = ["gettext", "Modules", "Navigation","ui.select2", "ngAnimate", "ngRoute", "restangular", "ngQuickDate", "Errors", "Profile", "Permissions", "Conversation"].concat(dashboard_dependencies); console.log("Dashboard dependencies:"); console.log(dependencies); var Dashboard = angular.module('Dashboard', dependencies); Dashboard.config(["$routeProvider", "RestangularProvider", "$httpProvider", "ngQuickDateDefaultsProvider", function($routeProvider, RestangularProvider, $httpProvider, ngQuickDateDefaultsProvider) { $routeProvider.when("/", { templateUrl: template("index") }); ngQuickDateDefaultsProvider.set({ closeButtonHtml: "", buttonIconHtml: "", nextLinkHtml: "", prevLinkHtml: "" }); RestangularProvider.setBaseUrl('/api/v1'); $httpProvider.defaults.headers.common.lang = $("html").attr("lang"); $httpProvider.defaults.headers.common.RTYPE = "ajax"; // Show loading icon on any request $httpProvider.interceptors.push(function($q) { return { 'request': function(config) { $(".loading").show(); return config; }, 'response': function(response) { $(".loading").hide(); return response; } }; }); RestangularProvider.setErrorInterceptor(function(response, a){ $(".loading").hide(); if (response.status == 401) { error_message(response.data.error); return false; } }); }]); Dashboard.run(["UserPermissions", "$rootScope", function(User, $rootScope){ $rootScope.user = User; }]); angular.element(document).ready(function(){ $.ajax({method: 'GET', type: 'json', url: API_PREFIX + "permissions/user"}) .success(function(data, status, headers, config){ PERMISSIONS = data.permissions; angular.bootstrap(document, ["Dashboard"]); }) .fail(function(data){ alert('Can not connect to remote, please try again'); }).always(function(){ $("#mainloader").hide(); $("#content").show(); }); });