diff --git a/app/Http/Controllers/AdminController.php b/app/Http/Controllers/AdminController.php index 724de1f..6f6cc2b 100755 --- a/app/Http/Controllers/AdminController.php +++ b/app/Http/Controllers/AdminController.php @@ -240,4 +240,64 @@ class AdminController extends Controller return view('/panel/backups'); } + //Delete custom theme + public function deleteTheme(request $request) + { + + $del = $request->deltheme; + + $folderName = base_path() . '/themes/' . $del; + + + + function removeFolder($folderName) { + + if (is_dir($folderName)) + + $folderHandle = opendir($folderName); + + + + if (!$folderHandle) + + return false; + + + + while($file = readdir($folderHandle)) { + + if ($file != "." && $file != "..") { + + if (!is_dir($folderName."/".$file)) + + unlink($folderName."/".$file); + + else + + removeFolder($folderName.'/'.$file); + + } + + } + + + + closedir($folderHandle); + + rmdir($folderName); + + + } + + removeFolder($folderName); + + return Redirect('/panel/theme'); + } + + //Shows config file editor page + public function showThemes(request $request) + { + return view('/panel/theme'); + } + } diff --git a/resources/views/panel/theme.blade.php b/resources/views/panel/theme.blade.php new file mode 100644 index 0000000..dce889b --- /dev/null +++ b/resources/views/panel/theme.blade.php @@ -0,0 +1,26 @@ +@extends('layouts.sidebar') + +@section('content') + +

Delete a theme

+ +
+ @csrf + +
+

Delete theme

+ + +
+ +
+ + +

⬅ Back + +@endsection diff --git a/resources/views/studio/theme.blade.php b/resources/views/studio/theme.blade.php index ee61bdc..45c3d98 100644 --- a/resources/views/studio/theme.blade.php +++ b/resources/views/studio/theme.blade.php @@ -52,6 +52,8 @@ + +   Delete themes
diff --git a/routes/web.php b/routes/web.php index d5ec3ca..b1c45b7 100755 --- a/routes/web.php +++ b/routes/web.php @@ -110,6 +110,8 @@ Route::get('/panel/site', [AdminController::class, 'showSite'])->name('showSite' Route::post('/panel/site', [AdminController::class, 'editSite'])->name('editSite'); Route::get('/panel/phpinfo', [AdminController::class, 'phpinfo'])->name('phpinfo'); Route::get('/panel/backups', [AdminController::class, 'showBackups'])->name('showBackups'); +Route::post('/panel/theme', [AdminController::class, 'deleteTheme'])->name('deleteTheme'); +Route::get('/panel/theme', [AdminController::class, 'showThemes'])->name('showThemes'); Route::get('/update', function () {return view('update', []);}); Route::get('/updating', function (\Codedge\Updater\UpdaterManager $updater) {