diff --git a/app/Http/Controllers/TaskKanbanController.php b/app/Http/Controllers/TaskKanbanController.php index 74cb43d52c2e..06626ff1e509 100644 --- a/app/Http/Controllers/TaskKanbanController.php +++ b/app/Http/Controllers/TaskKanbanController.php @@ -53,7 +53,11 @@ class TaskKanbanController extends BaseController */ public function storeStatus() { - return $this->saveStatus(); + $status = TaskStatus::createNew(); + $status->fill(request()->all()); + $status->save(); + + return response()->json($status); } /** @@ -63,22 +67,7 @@ class TaskKanbanController extends BaseController */ public function updateStatus($publicId) { - return $this->saveStatus($publicId); - } - - /** - * @param bool $publicId - * - * @return \Illuminate\Http\RedirectResponse - */ - private function saveStatus($publicId = false) - { - if ($publicId) { - $status = TaskStatus::scope($publicId)->firstOrFail(); - } else { - $status = TaskStatus::createNew(); - } - + $status = TaskStatus::scope($publicId)->firstOrFail(); $status->fill(request()->all()); $status->save(); diff --git a/resources/views/tasks/kanban.blade.php b/resources/views/tasks/kanban.blade.php index 6eb88bb477e4..5013544879cb 100644 --- a/resources/views/tasks/kanban.blade.php +++ b/resources/views/tasks/kanban.blade.php @@ -230,8 +230,17 @@ }); } - self.onStatusDragged = function() { + self.onStatusDragged = function(dragged) { console.log('onStatusDragged..'); + var status = dragged.item; + status.sort_order(dragged.targetIndex); + + var url = '{{ url('/task_status') }}/' + status.public_id(); + var data = task.toData(); + + model.ajax('put', url, data, function(response) { + // do nothing + }); } }