Working on task kanban

This commit is contained in:
Hillel Coren 2017-12-19 13:25:13 +02:00
parent 69e98c8f5e
commit 28edd3e7ec
3 changed files with 20 additions and 4 deletions

View File

@ -79,7 +79,7 @@ class TaskKanbanController extends BaseController
$status = TaskStatus::createNew(); $status = TaskStatus::createNew();
} }
$status->name = request('name'); $status->fill(request()->all());
$status->save(); $status->save();
return response()->json($status); return response()->json($status);

View File

@ -15,11 +15,21 @@ class TaskStatus extends EntityModel
* @var bool * @var bool
*/ */
public $timestamps = true; public $timestamps = true;
/** /**
* @var array * @var array
*/ */
protected $dates = ['deleted_at']; protected $dates = ['deleted_at'];
/**
* @var array
*/
protected $fillable = [
'name',
'sort_order',
];
/** /**
* @return mixed * @return mixed
*/ */

View File

@ -194,11 +194,11 @@
self.saveNewStatus = function() { self.saveNewStatus = function() {
var statusModel = new StatusModel({ var statusModel = new StatusModel({
name: self.new_status() name: self.new_status(),
sort_order: self.statuses().length,
}) })
var url = '{{ url('/task_statuses') }}'; var url = '{{ url('/task_statuses') }}';
var data = 'name=' + encodeURIComponent(statusModel.name()); var data = statusModel.toData();
self.ajax('post', url, data, function(response) { self.ajax('post', url, data, function(response) {
statusModel.public_id(response.public_id); statusModel.public_id(response.public_id);
self.statuses.push(statusModel); self.statuses.push(statusModel);
@ -238,12 +238,18 @@
function StatusModel(data) { function StatusModel(data) {
var self = this; var self = this;
self.name = ko.observable(); self.name = ko.observable();
self.sort_order = ko.observable();
self.public_id = ko.observable(); self.public_id = ko.observable();
self.is_editing_status = ko.observable(false); self.is_editing_status = ko.observable(false);
self.is_header_hovered = ko.observable(false); self.is_header_hovered = ko.observable(false);
self.tasks = ko.observableArray(); self.tasks = ko.observableArray();
self.new_task = new TaskModel(); self.new_task = new TaskModel();
self.toData = function() {
return 'name=' + encodeURIComponent(self.name()) +
'&sort_order=' + self.sort_order();
}
self.onHeaderMouseOver = function() { self.onHeaderMouseOver = function() {
self.is_header_hovered(true); self.is_header_hovered(true);
} }