public function deleteColumn(PFUser $user, AgileDashboard_Kanban $kanban, AgileDashboard_KanbanColumn $column) { $this->kanban_actions_checker->checkUserCanDeleteColumn($user, $kanban, $column); $tracker = $this->kanban_actions_checker->getTrackerForKanban($kanban); $semantic = $this->kanban_actions_checker->getSemanticStatus($tracker); $this->column_dao->startTransaction(); if (!$semantic->removeOpenValue($column->getId()) || !$this->hideColumnFromTrackerFieldStaticValues($column, $semantic) || !$this->column_dao->deleteColumn($column->getKanbanId(), $column->getId())) { $this->column_dao->rollBack(); return; } $this->column_dao->commit(); return true; }