preparing for proposal composition
This commit is contained in:
@@ -5,6 +5,7 @@ namespace App\Http\Controllers;
|
||||
use App\Models\Revision;
|
||||
use App\Models\Table;
|
||||
use App\Models\User;
|
||||
use App\Tables\Changeset;
|
||||
use App\Tables\Column;
|
||||
use App\Tables\ColumnNumerator;
|
||||
use App\Tables\CStructArrayExporter;
|
||||
@@ -57,22 +58,29 @@ class TableController extends Controller
|
||||
public function draftChange(Request $request, User $user, string $table)
|
||||
{
|
||||
/** @var Table $tableModel */
|
||||
$tableModel = $user->tables()->with('revision')->where('name', $table)->first();
|
||||
$tableModel = $user->tables()->where('name', $table)->first();
|
||||
if ($tableModel === null) abort(404, "No such table.");
|
||||
|
||||
$revision = $tableModel->revision;
|
||||
$session_key = "proposal_{$tableModel->id}";
|
||||
|
||||
/** @var Changeset $changeset */
|
||||
$changeset = $request->session()->remember($session_key, function () use ($tableModel) {
|
||||
$changeset = new Changeset();
|
||||
$changeset->table = $tableModel;
|
||||
$changeset->revision = $tableModel->revision;
|
||||
return $changeset;
|
||||
});
|
||||
|
||||
$revision = $changeset->revision;
|
||||
$columns = Column::columnsFromJson($revision->columns);
|
||||
|
||||
$rows = $revision->rowsData($columns)->paginate(25, []);
|
||||
|
||||
// TODO instantiate changeset and store it in session
|
||||
|
||||
return view('table.view', [
|
||||
return view('table.propose', [
|
||||
'table' => $tableModel,
|
||||
'revision' => $revision,
|
||||
'columns' => $columns,
|
||||
'rows' => $rows,
|
||||
'changeset' => $changeset,
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user