aboutsummaryrefslogtreecommitdiff
path: root/src/main/resources/webapp/apps/jenkinsApp/jenkinsApp.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/resources/webapp/apps/jenkinsApp/jenkinsApp.js')
-rwxr-xr-xsrc/main/resources/webapp/apps/jenkinsApp/jenkinsApp.js43
1 files changed, 41 insertions, 2 deletions
diff --git a/src/main/resources/webapp/apps/jenkinsApp/jenkinsApp.js b/src/main/resources/webapp/apps/jenkinsApp/jenkinsApp.js
index 7d0a90c..d632aaf 100755
--- a/src/main/resources/webapp/apps/jenkinsApp/jenkinsApp.js
+++ b/src/main/resources/webapp/apps/jenkinsApp/jenkinsApp.js
@@ -1,6 +1,43 @@
'use strict';
-var jenkinsApp = angular.module('jenkinsApp', ['jenkinsServer', 'jenkinsJob', 'jenkinsBuild', 'core.directives', 'pagingTableService']).config(function ($routeProvider) {
+function NavbarService() {
+ var create = function(tabs) {
+ console.log("create", tabs);
+ var currentIndex = 0;
+ var currentTab = tabs[currentIndex];
+
+ var onClick = function(tab) {
+ console.log("onClick", arguments);
+ currentTab = tab;
+ currentIndex = _.indexOf(tabs, tab);
+ };
+
+ var selected = function() {
+ return currentTab;
+ };
+
+ var selectedIndex = function() {
+ return currentIndex;
+ };
+
+ return {
+ onClick: onClick,
+ selected: selected,
+ selectedIndex: selectedIndex,
+ tabs: tabs
+ }
+ };
+
+ return {
+ create: create
+ }
+}
+
+angular.
+ module('navbarService', ['ngResource']).
+ factory('NavbarService', NavbarService);
+
+var jenkinsApp = angular.module('jenkinsApp', ['jenkinsServer', 'jenkinsJob', 'jenkinsBuild', 'core.directives', 'navbarService', 'pagingTableService']).config(function ($routeProvider) {
$routeProvider.
when('/', {controller: ServerListCtrl, templateUrl: '/apps/jenkinsApp/server-list.html?noCache=' + noCache}).
when('/server/:serverUuid', {controller: ServerCtrl, templateUrl: '/apps/jenkinsApp/server.html?noCache=' + noCache}).
@@ -14,7 +51,7 @@ function ServerListCtrl($scope, $location, JenkinsServer) {
});
}
-function ServerCtrl($scope, $location, $routeParams, JenkinsServer, JenkinsJob, PagingTableService) {
+function ServerCtrl($scope, $routeParams, JenkinsServer, JenkinsJob, PagingTableService, NavbarService) {
$scope.serverUuid = $routeParams.serverUuid;
JenkinsServer.get({uuid: $scope.serverUuid}, function (server) {
@@ -22,6 +59,8 @@ function ServerCtrl($scope, $location, $routeParams, JenkinsServer, JenkinsJob,
});
$scope.jobs = PagingTableService.create($scope, PagingTableService.defaultCallback(JenkinsJob, {server: $scope.serverUuid}));
+
+ $scope.navbar = NavbarService.create(["Overview", "Jobs", "Recent Builds"]);
}
function JobCtrl($scope, $location, $routeParams, JenkinsJob, JenkinsBuild, PagingTableService) {