function HeaderCtrl($scope, UserService) { $scope.$watch( function () { return UserService.currentUser(); }, function (currentUser) { $scope.user = currentUser; }, true); } function RepoListCtrl($scope, Restangular) { var repositoryFetch = Restangular.all('repository/'); repositoryFetch.getList().then(function(resp) { $scope.repositories = resp.repositories; }); } function LandingCtrl($scope) { } function RepoCtrl($scope, Restangular, $routeParams, $rootScope) { $rootScope.title = 'Loading...'; $scope.editDescription = function() { if (!$scope.repo.can_write) { return; } $('#descriptionEdit')[0].value = $scope.repo.description || ''; $('#editModal').modal({}); }; $scope.saveDescription = function() { $('#editModal').modal('hide'); $scope.repo.description = $('#descriptionEdit')[0].value; $scope.repo.put(); }; $scope.parseDate = function(dateString) { return Date.parse(dateString); }; var namespace = $routeParams.namespace; var name = $routeParams.name; var tag = $routeParams.tag || 'latest'; var repositoryFetch = Restangular.one('repository/' + namespace + '/' + name); repositoryFetch.get().then(function(repo) { $rootScope.title = namespace + '/' + name; $scope.repo = repo; $scope.currentTag = repo.tags[tag] || repo.tags['latest']; }, function() { $scope.repo = null; $rootScope.title = 'Unknown Repository'; }); } function RepoAdminCtrl($scope, Restangular, $routeParams, $rootScope) { var namespace = $routeParams.namespace; var name = $routeParams.name; $scope.setRole = function(username, role) { var permission = $scope.permissions[username]; permission.role = role; var permissionPut = Restangular.one('repository/' + namespace + '/' + name + '/permissions/' + username); permissionPut.customPUT(permission); }; var permissionsFetch = Restangular.one('repository/' + namespace + '/' + name + '/permissions'); permissionsFetch.get().then(function(resp) { $rootScope.title = 'Permissions - ' + namespace + '/' + name; $scope.repo = { 'namespace': namespace, 'name': name }; $scope.permissions = resp.permissions; }, function() { $scope.repo = null; $scope.permissions = null; $rootScope.title = 'Unknown Repository'; }); }