implemented step 04 by Gemini,
- added AJAX actions initSession, createProject, listProjects and getProjectStatus
This commit is contained in:
@ -51,11 +51,33 @@ try {
|
||||
}
|
||||
|
||||
// Router
|
||||
$projectActions = new \App\Actions\ProjectActions();
|
||||
|
||||
switch ($action) {
|
||||
case 'ping':
|
||||
sendResponse(true, ['message' => 'pong', 'timestamp' => time()]);
|
||||
break;
|
||||
|
||||
case 'initSession':
|
||||
sendResponse(true, $projectActions->initSession());
|
||||
break;
|
||||
|
||||
case 'createProject':
|
||||
sendResponse(true, $projectActions->createProject($userId));
|
||||
break;
|
||||
|
||||
case 'listProjects':
|
||||
sendResponse(true, $projectActions->listProjects($userId));
|
||||
break;
|
||||
|
||||
case 'getProjectStatus':
|
||||
$projectId = $data['project_id'] ?? null;
|
||||
if (!$projectId) {
|
||||
sendResponse(false, ['code' => 'MISSING_PROJECT_ID', 'message' => 'Project ID is required.'], 400);
|
||||
}
|
||||
sendResponse(true, $projectActions->getProjectStatus($userId, $projectId));
|
||||
break;
|
||||
|
||||
default:
|
||||
sendResponse(false, ['code' => 'UNKNOWN_ACTION', 'message' => "Action '$action' is not defined."], 404);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user