var AngularApp = angular.module("AngularApp", [ "ngResource" ]); AngularApp.config(['$controllerProvider', function($controllerProvider) { $controllerProvider.allowGlobals(); }]); AngularApp.factory('settings', ['$rootScope', function($rootScope) { // supported languages var settings = { layout: { pageSidebarClosed: false, // sidebar menu state pageContentWhite: true, // set page content layout pageBodySolid: false, // solid body color state pageAutoScrollOnLoad: 1000 // auto scroll to top on page load }, assetsPath: '/assets', globalPath: '/assets/global', layoutPath: '/assets/layouts/layout3' }; $rootScope.settings = settings; return settings; }]); /* Setup App Main Controller */ AngularApp.controller('AppController', ['$scope', '$rootScope', function($scope, $rootScope) { App.initComponents(); }]); /* Setup Layout Part - Header */ AngularApp.controller('HeaderController', ['$scope','$resource', function($scope,$resource) { Layout.initHeader(); // init header }]); AngularApp.controller('CommentsController', ['$scope','$resource','$timeout', function($scope,$resource,$timeout) { $scope.success=false; $scope.error=false $scope.newComment={"articleId":$scope.articleId} $scope.commentsList=[] $resource('/api/'+$scope.articleId+'/comments').get(function (data) { $scope.commentsList =data.comments; if(data.user!=null){ $scope.newComment.userEmail =data.user.email; $scope.newComment.userNickName =data.user.nickName; } }); $scope.submit=function () { $scope.disabled=true; $resource('/api/'+$scope.articleId+'/comments').save($scope.newComment,function () { $resource('/api/'+$scope.articleId+'/comments').get(function (data) { $scope.commentsList =data.comments; if(data.user!=null){ $scope.newComment.userEmail =data.user.email; $scope.newComment.userNickName =data.user.nickName; } $scope.success=true; $timeout(function () { $scope.success=false; $scope.newComment.content=null; $scope.disabled=false; },3000) },function () { $scope.error=true; $timeout(function () { $scope.error=false; $scope.disabled=false; },1000); }); }); } }]); /* Setup Layout Part - Sidebar */ AngularApp.controller('SidebarController', ['$scope','$resource', function($scope,$resource) { $scope.articleListWrapper = $resource('/api/articles').query({tutorialId:$scope.tutorialId}); }]); /* Setup Layout Part - Footer */ AngularApp.controller('FooterController', ['$scope', function($scope) { Layout.initFooter(); // init footer }]); /* Init global settings and run the app */ AngularApp.run(["$rootScope", "settings", function($rootScope, settings) { $rootScope.$settings = settings; // state to be accessed from view }]);