/** * An element which displays a dialog for manually starting a dockerfile build. */ angular.module('quay').directive('dockerfileBuildDialog', function () { var directiveDefinitionObject = { priority: 0, templateUrl: '/static/directives/dockerfile-build-dialog.html', replace: false, transclude: false, restrict: 'C', scope: { 'repository': '=repository', 'showNow': '=showNow', 'buildStarted': '&buildStarted' }, controller: function($scope, $element) { $scope.building = false; $scope.uploading = false; $scope.startCounter = 0; $scope.handleBuildStarted = function(build) { $('#dockerfilebuildModal').modal('hide'); if ($scope.buildStarted) { $scope.buildStarted({'build': build}); } }; $scope.handleBuildFailed = function(message) { $scope.errorMessage = message; }; $scope.startBuild = function() { $scope.errorMessage = null; $scope.startCounter++; }; $scope.$watch('showNow', function(sn) { if (sn && $scope.repository) { $('#dockerfilebuildModal').modal({}); } }); } }; return directiveDefinitionObject; });