20 lines
1017 B
PHP
20 lines
1017 B
PHP
<?php
|
|
namespace Modules\Content\Http\Controllers;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Http\RedirectResponse;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\View\View;
|
|
use Modules\Content\Models\PageContent;
|
|
|
|
final class PageCompositionController extends Controller
|
|
{
|
|
public function edit(string $pageKey): View { return view('content::admin.composition',['pageKey'=>$pageKey,'placements'=>PageContent::query()->with('document.type')->where('page_key',$pageKey)->orderByRaw("CASE region WHEN 'header' THEN 1 WHEN 'body' THEN 2 ELSE 3 END")->orderBy('sort_order')->get()->groupBy('region')]); }
|
|
public function update(Request $request, PageContent $placement): RedirectResponse
|
|
{
|
|
$validated=$request->validate(['sort_order'=>['required','integer','min:0'],'is_enabled'=>['nullable','boolean']]);
|
|
$placement->update(['sort_order'=>$validated['sort_order'],'is_enabled'=>$request->boolean('is_enabled')]);
|
|
return back()->with('status','Page placement updated.');
|
|
}
|
|
}
|