Fix double board list loading

This commit is contained in:
Julius Haertl
2016-10-28 22:31:32 +02:00
parent c1bbe62cfa
commit d16c767017
5 changed files with 37 additions and 41 deletions

View File

@@ -21,25 +21,32 @@
*
*/
app.controller('ListController', function ($scope, $location, $filter, BoardService) {
app.controller('ListController', function ($scope, $location, $filter, BoardService, $element) {
$scope.boards = [];
$scope.newBoard = {};
$scope.status = {};
$scope.colors = ['31CC7C', '317CCC', 'FF7A66', 'F1DB50', '7C31CC', 'CC317C', '3A3B3D', 'CACBCD'];
$scope.boardservice = BoardService;
BoardService.fetchAll().then(function(data) {
$scope.filterData();
}, function (error) {
}); // TODO: show error when loading fails
// FIXME: not nice, but we want to load this only once
if($element.attr('id') === 'app-navigation') {
BoardService.fetchAll().then(function(data) {
$scope.filterData();
}, function (error) {
// TODO: show error when loading fails
});
}
$scope.filterData = function () {
angular.copy($scope.boardservice.getData(), $scope.boardservice.sorted);
$scope.boardservice.sorted = $filter('orderBy')($scope.boardservice.sorted, 'title');
};
$scope.selectColor = function(color) {
$scope.newBoard.color = color;
};
$scope.boardCreate = function () {
$scope.boardCreate = function() {
if(!$scope.newBoard.title || !$scope.newBoard.color) {
$scope.status.addBoard=false;
return;
@@ -53,28 +60,19 @@ app.controller('ListController', function ($scope, $location, $filter, BoardServ
$scope.status.createBoard = 'Unable to insert board: ' + error.message;
});
};
$scope.boardUpdate = function(board) {
BoardService.update(board).then(function(data) {
$scope.filterData();
});
board.status.edit = false;
};
$scope.boardDelete = function(board) {
// TODO: Ask for confirmation
//if (confirm('Are you sure you want to delete this?')) {
BoardService.delete(board.id).then(function (data) {
$scope.filterData();
});
//}
};
$scope.filterData = function () {
angular.copy($scope.boardservice.getData(), $scope.boardservice.sorted);
$scope.boardservice.sorted = $filter('orderBy')($scope.boardservice.sorted, 'title');
};
});

View File

@@ -400,25 +400,32 @@ app.controller('CardController', ["$scope", "$rootScope", "$routeParams", "$loca
}]);
app.controller('ListController', ["$scope", "$location", "$filter", "BoardService", function ($scope, $location, $filter, BoardService) {
app.controller('ListController', ["$scope", "$location", "$filter", "BoardService", "$element", function ($scope, $location, $filter, BoardService, $element) {
$scope.boards = [];
$scope.newBoard = {};
$scope.status = {};
$scope.colors = ['31CC7C', '317CCC', 'FF7A66', 'F1DB50', '7C31CC', 'CC317C', '3A3B3D', 'CACBCD'];
$scope.boardservice = BoardService;
BoardService.fetchAll().then(function(data) {
$scope.filterData();
}, function (error) {
}); // TODO: show error when loading fails
// FIXME: not nice, but we want to load this only once
if($element.attr('id') === 'app-navigation') {
BoardService.fetchAll().then(function(data) {
$scope.filterData();
}, function (error) {
// TODO: show error when loading fails
});
}
$scope.filterData = function () {
angular.copy($scope.boardservice.getData(), $scope.boardservice.sorted);
$scope.boardservice.sorted = $filter('orderBy')($scope.boardservice.sorted, 'title');
};
$scope.selectColor = function(color) {
$scope.newBoard.color = color;
};
$scope.boardCreate = function () {
$scope.boardCreate = function() {
if(!$scope.newBoard.title || !$scope.newBoard.color) {
$scope.status.addBoard=false;
return;
@@ -432,29 +439,20 @@ app.controller('ListController', ["$scope", "$location", "$filter", "BoardServic
$scope.status.createBoard = 'Unable to insert board: ' + error.message;
});
};
$scope.boardUpdate = function(board) {
BoardService.update(board).then(function(data) {
$scope.filterData();
});
board.status.edit = false;
};
$scope.boardDelete = function(board) {
// TODO: Ask for confirmation
//if (confirm('Are you sure you want to delete this?')) {
BoardService.delete(board.id).then(function (data) {
$scope.filterData();
});
//}
};
$scope.filterData = function () {
angular.copy($scope.boardservice.getData(), $scope.boardservice.sorted);
$scope.boardservice.sorted = $filter('orderBy')($scope.boardservice.sorted, 'title');
};
}]);

View File

@@ -29,7 +29,7 @@ use OCP\AppFramework\Db\Mapper;
class CardMapper extends Mapper implements IPermissionMapper {
class CardMapper extends DeckMapper implements IPermissionMapper {
private $labelMapper;

View File

@@ -51,7 +51,7 @@ abstract class DeckMapper extends Mapper {
protected function execute($sql, array $params = [], $limit = null, $offset = null) {
// FIXME: remove on release
\OCP\Util::writeLog('deck', "DeckMapper SQL: " . $sql, \OCP\Util::DEBUG);
\OCP\Util::writeLog('deck', "DeckMapper SQL: " . $sql . " with " . implode("|", $params), \OCP\Util::DEBUG);
return parent::execute($sql, $params, $limit, $offset);
}

View File

@@ -28,7 +28,7 @@ use OCP\IDb;
use OCP\AppFramework\Db\Mapper;
class StackMapper extends Mapper implements IPermissionMapper {
class StackMapper extends DeckMapper implements IPermissionMapper {
private $cardMapper;