stack, card undo delete: refactoring
Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info> stack undo delete: serve cards with deleted and delete actions Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info> stack, cards undo delete: codacy Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info> card undo delete: 526#discussion_r204501758, refactoring Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info> card, stack undo delete: code review fixes #1 Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info> undo card, stack delete: show deleted stacks name in deleted card listing Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>
This commit is contained in:
committed by
Julius Härtl
parent
95548fba54
commit
41d30d4fd4
@@ -42,15 +42,12 @@ app.controller('BoardController', function ($rootScope, $scope, $stateParams, St
|
||||
$scope.board = BoardService.getCurrent();
|
||||
$scope.uploader = FileService.uploader;
|
||||
|
||||
$scope.deletedCards = {};
|
||||
$scope.deletedStacks = {};
|
||||
|
||||
$scope.$watch(function() {
|
||||
return $state.current;
|
||||
}, function(currentState) {
|
||||
if(currentState.name === 'board.detail') {
|
||||
$scope.loadDeletedEntity(CardService, 'deletedCards');
|
||||
$scope.loadDeletedEntity(StackService, 'deletedStacks');
|
||||
CardService.fetchDeleted($scope.id);
|
||||
StackService.fetchDeleted($scope.id);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -148,16 +145,6 @@ app.controller('BoardController', function ($rootScope, $scope, $stateParams, St
|
||||
});
|
||||
};
|
||||
|
||||
$scope.loadDeletedEntity = function(service, scopeKey) {
|
||||
service.fetchDeleted($scope.id).then(function (data) {
|
||||
for(i=0;i<data.length;i++) {
|
||||
$scope[scopeKey][data[i].id] = data[i];
|
||||
}
|
||||
}, function (error) {
|
||||
$scope.statusservice.setError('Error occured', error);
|
||||
});
|
||||
};
|
||||
|
||||
$scope.loadDefault = function () {
|
||||
StackService.fetchAll($scope.id).then(function (data) {
|
||||
$scope.statusservice.releaseWaiting();
|
||||
@@ -209,47 +196,52 @@ app.controller('BoardController', function ($rootScope, $scope, $stateParams, St
|
||||
};
|
||||
|
||||
$scope.stackDelete = function (stack) {
|
||||
$scope.stackservice.delete(stack.id).then(function() {
|
||||
$scope.deletedStacks[stack.id] = stack;
|
||||
});
|
||||
}
|
||||
$scope.stackservice.delete(stack.id);
|
||||
};
|
||||
|
||||
$scope.stackUndoDelete = function (deletedStack) {
|
||||
return StackService.undoDelete(deletedStack).then(function() {
|
||||
delete $scope.deletedStacks[deletedStack.id];
|
||||
});
|
||||
}
|
||||
return StackService.undoDelete(deletedStack);
|
||||
};
|
||||
|
||||
$scope.cardDelete = function (card) {
|
||||
CardService.delete(card.id).then(function () {
|
||||
StackService.removeCard(card);
|
||||
$scope.deletedCards[card.id] = card;
|
||||
});
|
||||
};
|
||||
|
||||
$scope.cardUndoDelete = function (deletedCard) {
|
||||
CardService.undoDelete(deletedCard).then(function() {
|
||||
delete $scope.deletedCards[deletedCard.id];
|
||||
|
||||
var associatedDeletedStack = $scope.deletedStacks[deletedCard.stackId];
|
||||
if(associatedDeletedStack !== undefined) {
|
||||
OC.dialogs.confirm(
|
||||
t('deck', 'The associated stack is deleted as well, do you want to restore it as well?'),
|
||||
t('deck', 'Yes'),
|
||||
function(state) {
|
||||
|
||||
if (state) {
|
||||
$scope.stackUndoDelete(associatedDeletedStack).then(function() {
|
||||
StackService.addCard(deletedCard);
|
||||
});
|
||||
}
|
||||
});
|
||||
} else {
|
||||
StackService.addCard(deletedCard);
|
||||
}
|
||||
});
|
||||
var associatedDeletedStack = $scope.stackservice.deleted[deletedCard.stackId];
|
||||
if(associatedDeletedStack !== undefined) {
|
||||
$scope.cardAndStackUndoDelete(deletedCard, associatedDeletedStack);
|
||||
} else {
|
||||
$scope._cardUndoDelete(deletedCard);
|
||||
}
|
||||
};
|
||||
|
||||
$scope.cardAndStackUndoDelete = function(deletedCard, associatedDeletedStack) {
|
||||
OC.dialogs.confirm(
|
||||
t('deck', 'The associated stack is deleted as well, it will be restored as well.'),
|
||||
t('deck', 'Restore associated stack'),
|
||||
function(state) {
|
||||
if (state) {
|
||||
$scope._cardAndStackUndoDelete(deletedCard, associatedDeletedStack);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
$scope._cardAndStackUndoDelete = function(deletedCard, associatedDeletedStack) {
|
||||
$scope.stackUndoDelete(associatedDeletedStack).then(function() {
|
||||
$scope._cardUndoDelete(deletedCard);
|
||||
});
|
||||
}
|
||||
|
||||
$scope._cardUndoDelete = function(deletedCard) {
|
||||
CardService.undoDelete(deletedCard).then(function() {
|
||||
StackService.addCard(deletedCard);
|
||||
});
|
||||
}
|
||||
|
||||
$scope.cardArchive = function (card) {
|
||||
CardService.archive(card);
|
||||
StackService.removeCard(card);
|
||||
|
||||
Reference in New Issue
Block a user