Add a throbber and better dialog for deleting repo

Fixes #265
This commit is contained in:
Joseph Schorr 2015-07-22 16:42:33 -04:00
parent 6ba2d972d2
commit b7581a8d3f
2 changed files with 24 additions and 6 deletions

View file

@ -13,6 +13,8 @@ angular.module('quay').directive('repoPanelSettings', function () {
'isEnabled': '=isEnabled'
},
controller: function($scope, $element, ApiService, Config) {
$scope.deleteDialogCounter = 0;
$scope.getBadgeFormat = function(format, repository) {
if (!repository) { return ''; }
@ -39,22 +41,25 @@ angular.module('quay').directive('repoPanelSettings', function () {
};
$scope.askDelete = function() {
bootbox.confirm('Are you sure you want delete this repository?', function(r) {
if (!r) { return; }
$scope.deleteRepo();
});
$scope.deleteDialogCounter++;
$scope.deleteRepoInfo = {
'counter': $scope.deleteDialogCounter
};
};
$scope.deleteRepo = function() {
$scope.deleteRepo = function(info, callback) {
var params = {
'repository': $scope.repository.namespace + '/' + $scope.repository.name
};
var errorHandler = ApiService.errorDisplay('Could not delete repository', callback);
ApiService.deleteRepository(null, params).then(function() {
callback(true);
setTimeout(function() {
document.location = '/repository/';
}, 100);
}, ApiService.errorDisplay('Could not delete repository'));
}, errorHandler);
};