UX improvements in table editor
This commit is contained in:
@@ -123,20 +123,36 @@ class TableEditController extends Controller
|
||||
|
||||
$input = objBag($request->all(), false);
|
||||
|
||||
$resp = null;
|
||||
$code = 200;
|
||||
|
||||
try {
|
||||
$code = 200;
|
||||
switch ($input->action) {
|
||||
case 'row.update':
|
||||
$data = (object)$input->data;
|
||||
$resp = $changeset->rowUpdate($data);
|
||||
break;
|
||||
|
||||
case 'row.update-many':
|
||||
$newVals = $input->data;
|
||||
$updated = [];
|
||||
foreach ($newVals as $rowUpdate) {
|
||||
$r = $changeset->rowUpdate($rowUpdate);
|
||||
$updated[$r->_id] = $r;
|
||||
}
|
||||
$resp = $updated;
|
||||
break;
|
||||
|
||||
case 'row.remove':
|
||||
$isNew = $changeset->isNewRow($input->id);
|
||||
$changeset->rowRemove($input->id);
|
||||
$resp = $isNew ? null : $changeset->fetchAndTransformRow($input->id);
|
||||
break;
|
||||
|
||||
case 'rows.remove-empty-new':
|
||||
$changeset->removeEmptyNewRows();
|
||||
break;
|
||||
|
||||
case 'row.restore':
|
||||
$changeset->rowRestore($input->id);
|
||||
$resp = $changeset->fetchAndTransformRow($input->id);
|
||||
@@ -144,13 +160,6 @@ class TableEditController extends Controller
|
||||
|
||||
case 'rows.add':
|
||||
$changeset->addBlankRows($input->count);
|
||||
|
||||
// rows.add is sent via a form
|
||||
if ($input->has('redirect')) {
|
||||
return redirect($input->redirect);
|
||||
} else {
|
||||
$resp = null;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'rows.add-csv':
|
||||
@@ -159,13 +168,6 @@ class TableEditController extends Controller
|
||||
} catch (\Exception $e) {
|
||||
return $this->backWithErrors(['data' => $e->getMessage()]);
|
||||
}
|
||||
|
||||
// rows.add-csv is sent via a form
|
||||
if ($input->has('redirect')) {
|
||||
return redirect($input->redirect);
|
||||
} else {
|
||||
$resp = null;
|
||||
}
|
||||
break;
|
||||
|
||||
case 'col.update':
|
||||
@@ -190,7 +192,6 @@ class TableEditController extends Controller
|
||||
|
||||
case 'col.sort':
|
||||
$changeset->setColOrder($input->order);
|
||||
$resp = null;
|
||||
break;
|
||||
|
||||
default:
|
||||
@@ -204,6 +205,11 @@ class TableEditController extends Controller
|
||||
|
||||
$this->storeChangeset($changeset);
|
||||
|
||||
// Redirect requested via form
|
||||
if ($code == 200 && $input->has('redirect')) {
|
||||
return redirect($input->redirect);
|
||||
}
|
||||
|
||||
return $this->jsonResponse($resp, $code);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user