(function() { /** * Page to view the details of a single manifest. */ angular.module('quayPages').config(['pages', function(pages) { pages.create('manifest-view', 'manifest-view.html', ManifestViewCtrl, { 'newLayout': true, 'title': '{{ manifest_digest }}', 'description': 'Manifest {{ manifest_digest }}' }) }]); function ManifestViewCtrl($scope, $routeParams, $rootScope, $timeout, ApiService, ImageMetadataService, Features, CookieService) { var namespace = $routeParams.namespace; var name = $routeParams.name; var manifest_digest = $routeParams.manifest_digest; $scope.manifestSecurityCounter = 0; $scope.manifestPackageCounter = 0; $scope.options = { 'vulnFilter': '' }; var loadManifest = function() { var params = { 'repository': namespace + '/' + name, 'manifestref': manifest_digest }; $scope.manifestResource = ApiService.getRepoManifestAsResource(params).get(function(manifest) { $scope.manifest = manifest; $scope.reversedHistory = manifest.image.history.reverse(); }); }; var loadRepository = function() { var params = { 'repository': namespace + '/' + name }; $scope.repositoryResource = ApiService.getRepoAsResource(params).get(function(repo) { $scope.repository = repo; }); }; loadManifest(); loadRepository(); $scope.loadManifestSecurity = function() { if (!Features.SECURITY_SCANNER) { return; } $scope.manifestSecurityCounter++; }; $scope.loadManifestPackages = function() { if (!Features.SECURITY_SCANNER) { return; } $scope.manifestPackageCounter++; }; } })();