From 5cff1e54615f1e88870f7a7cbcba4a59e2614f8b Mon Sep 17 00:00:00 2001 From: 1day2die Date: Thu, 11 May 2023 09:32:13 +0200 Subject: [PATCH] Re-Implement Image uploading --- .../Controllers/Admin/SettingsController.php | 21 ++++++++ routes/web.php | 7 ++- .../views/admin/settings/index.blade.php | 54 +++++++++++++++++++ 3 files changed, 78 insertions(+), 4 deletions(-) diff --git a/app/Http/Controllers/Admin/SettingsController.php b/app/Http/Controllers/Admin/SettingsController.php index 7d1657f1..47cc4207 100644 --- a/app/Http/Controllers/Admin/SettingsController.php +++ b/app/Http/Controllers/Admin/SettingsController.php @@ -138,4 +138,25 @@ class SettingsController extends Controller return Redirect::to('admin/settings' . '#' . $category)->with('success', 'Settings updated successfully.'); } + + public function updateIcons(Request $request) + { + $request->validate([ + 'icon' => 'nullable|max:10000|mimes:jpg,png,jpeg', + 'logo' => 'nullable|max:10000|mimes:jpg,png,jpeg', + 'favicon' => 'nullable|max:10000|mimes:ico', + ]); + + if ($request->hasFile('icon')) { + $request->file('icon')->storeAs('public', 'icon.png'); + } + if ($request->hasFile('logo')) { + $request->file('logo')->storeAs('public', 'logo.png'); + } + if ($request->hasFile('favicon')) { + $request->file('favicon')->storeAs('public', 'favicon.ico'); + } + + return Redirect::to('admin/settings')->with('success', 'Icons updated successfully.'); + } } diff --git a/routes/web.php b/routes/web.php index 425c5613..5e09c048 100644 --- a/routes/web.php +++ b/routes/web.php @@ -169,13 +169,12 @@ Route::middleware(['auth', 'checkSuspended'])->group(function () { Route::get('payments', [PaymentController::class, 'index'])->name('payments.index'); //settings - Route::get('settings/datatable', [SettingsController::class, 'datatable'])->name('settings.datatable'); - Route::patch('settings/updatevalue', [SettingsController::class, 'updatevalue'])->name('settings.updatevalue'); - Route::get('settings/checkPteroClientkey', [System::class, 'checkPteroClientkey'])->name('settings.checkPteroClientkey'); - Route::redirect('settings#system', 'system')->name('settings.system'); + Route::get('settings', [SettingsController::class, 'index'])->name('settings.index'); Route::post('settings', [SettingsController::class, 'update'])->name('settings.update'); + Route::post('settings/icons', [SettingsController::class, 'updateIcons'])->name('settings.updateIcons'); + //invoices Route::get('invoices/download-invoices', [InvoiceController::class, 'downloadAllInvoices'])->name('invoices.downloadAllInvoices'); diff --git a/themes/default/views/admin/settings/index.blade.php b/themes/default/views/admin/settings/index.blade.php index 28615dbe..f3438dd2 100644 --- a/themes/default/views/admin/settings/index.blade.php +++ b/themes/default/views/admin/settings/index.blade.php @@ -44,6 +44,17 @@