feat: add theme update
This commit is contained in:
@@ -23,4 +23,26 @@ public function show($id)
|
|||||||
{
|
{
|
||||||
return response()->json(Theme::findOrFail($id));
|
return response()->json(Theme::findOrFail($id));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Edit an existing theme — typically its color map. The `key` is the stable
|
||||||
|
// identifier the app maps against, so it is intentionally not editable here.
|
||||||
|
public function update(Request $request, $id)
|
||||||
|
{
|
||||||
|
$theme = Theme::findOrFail($id);
|
||||||
|
|
||||||
|
$data = $request->validate([
|
||||||
|
'name' => 'sometimes|string|max:255',
|
||||||
|
'colors' => 'sometimes|array',
|
||||||
|
'colors.*' => 'nullable|string|max:32',
|
||||||
|
'order' => 'sometimes|integer',
|
||||||
|
'is_active' => 'sometimes|boolean',
|
||||||
|
]);
|
||||||
|
|
||||||
|
$theme->update($data);
|
||||||
|
|
||||||
|
return response()->json([
|
||||||
|
'message' => 'Theme updated successfully',
|
||||||
|
'data' => $theme,
|
||||||
|
]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -202,6 +202,8 @@
|
|||||||
/// themes (color themes a scene can use)
|
/// themes (color themes a scene can use)
|
||||||
Route::get('/themes', [ThemeController::class, 'index']);
|
Route::get('/themes', [ThemeController::class, 'index']);
|
||||||
Route::get('/themes/{id}', [ThemeController::class, 'show']);
|
Route::get('/themes/{id}', [ThemeController::class, 'show']);
|
||||||
|
Route::put('/themes/{id}', [ThemeController::class, 'update']); // edit name / colors / order / active
|
||||||
|
Route::post('/themes/{id}', [ThemeController::class, 'update']); // same, for method-spoofed clients
|
||||||
|
|
||||||
/// scenes (تنظیمات صحنه) — each scene has an image, optional video, and sound
|
/// scenes (تنظیمات صحنه) — each scene has an image, optional video, and sound
|
||||||
// Consolidated settings screen (all scenes + current user's preferences) in one call.
|
// Consolidated settings screen (all scenes + current user's preferences) in one call.
|
||||||
|
|||||||
Reference in New Issue
Block a user