Files
Atomcms-edit/app/Http/Controllers/Miscellaneous/LogoGeneratorController.php
T
root 05fc7b04bc refactor: add return type hints to all controller methods
Added proper return types (View, RedirectResponse, JsonResponse, Collection)
to 40+ controller methods across 16 controllers. Also added missing
imports for Illuminate response types and tightened parameter types
(e.g. InstallationController::showStep now uses int instead of mixed).
2026-05-19 19:28:21 +02:00

40 lines
1.1 KiB
PHP
Executable File

<?php
namespace App\Http\Controllers\Miscellaneous;
use App\Http\Controllers\Controller;
use App\Models\Miscellaneous\WebsiteSetting;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request;
use Illuminate\View\View;
class LogoGeneratorController extends Controller
{
public function index(): View|RedirectResponse
{
if (! hasPermission('generate_logo')) {
return to_route('me.show')->with([
'message' => __('You do not have permission to do this.'),
]);
}
return view('logo-generator');
}
public function store(Request $request): JsonResponse
{
$request->validate(['logo' => 'required|image|mimes:jpeg,png,gif,webp|max:5120']);
$path = $request->file('logo')->store('generated-logos', 'public');
$setting = WebsiteSetting::where('key', 'cms_logo')->first();
$setting?->update([
'value' => '/storage/' . $path,
]);
return response()->json(['success' => true, 'message' => 'Logo updated!']);
}
}