Skip to content

Commit 1ee73d0

Browse files
committed
Added option for deleting themes
1 parent e863e8a commit 1ee73d0

File tree

4 files changed

+90
-0
lines changed

4 files changed

+90
-0
lines changed

app/Http/Controllers/AdminController.php

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,4 +240,64 @@ public function showBackups(request $request)
240240
return view('/panel/backups');
241241
}
242242

243+
//Delete custom theme
244+
public function deleteTheme(request $request)
245+
{
246+
247+
$del = $request->deltheme;
248+
249+
$folderName = base_path() . '/themes/' . $del;
250+
251+
252+
253+
function removeFolder($folderName) {
254+
255+
if (is_dir($folderName))
256+
257+
$folderHandle = opendir($folderName);
258+
259+
260+
261+
if (!$folderHandle)
262+
263+
return false;
264+
265+
266+
267+
while($file = readdir($folderHandle)) {
268+
269+
if ($file != "." && $file != "..") {
270+
271+
if (!is_dir($folderName."/".$file))
272+
273+
unlink($folderName."/".$file);
274+
275+
else
276+
277+
removeFolder($folderName.'/'.$file);
278+
279+
}
280+
281+
}
282+
283+
284+
285+
closedir($folderHandle);
286+
287+
rmdir($folderName);
288+
289+
290+
}
291+
292+
removeFolder($folderName);
293+
294+
return Redirect('/panel/theme');
295+
}
296+
297+
//Shows config file editor page
298+
public function showThemes(request $request)
299+
{
300+
return view('/panel/theme');
301+
}
302+
243303
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
@extends('layouts.sidebar')
2+
3+
@section('content')
4+
5+
<h2 class="mb-4"><i class="bi bi-brush"> Delete a theme</i></h2>
6+
7+
<form action="{{ route('deleteTheme') }}" enctype="multipart/form-data" method="post">
8+
@csrf
9+
10+
<div class="form-group col-lg-8">
11+
<h3>Delete theme</h3>
12+
<select class="form-control" name="deltheme">
13+
<?php if ($handle = opendir('themes')) {
14+
while (false !== ($entry = readdir($handle))) {
15+
if ($entry != "." && $entry != "..") {
16+
echo '<option>'; print_r($entry); echo '</option>'; }}} ?>
17+
</select>
18+
19+
</div>
20+
<button type="submit" class="mt-3 ml-3 btn btn-info">Delete theme</button>
21+
</form>
22+
</details>
23+
24+
<br><br><a class="btn btn-primary" href="{{ url('/studio/theme') }}">⬅ Back</a>
25+
26+
@endsection

resources/views/studio/theme.blade.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@
5252
<label>Upload theme</label>
5353
<input type="file" accept=".zip" class="form-control-file" name="zip">
5454
</div>
55+
<style>.deltheme{color:tomato;font-size:120%;}.deltheme:hover{color:red;text-decoration:underline;}</style>
56+
<a class="deltheme" href="{{ url('/panel/theme') }}">&emsp; Delete themes</a>
5557
<div class="row">
5658
<button type="submit" class="mt-3 ml-3 btn btn-info">Upload theme</button>
5759
<button class="mt-3 ml-3 btn btn-primary" title="Download more themes"><a href="https://littlelink-custom.com/themes.php" target="_blank" style="color:#FFFFFF;">Download themes</a></button>

routes/web.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,8 @@
110110
Route::post('/panel/site', [AdminController::class, 'editSite'])->name('editSite');
111111
Route::get('/panel/phpinfo', [AdminController::class, 'phpinfo'])->name('phpinfo');
112112
Route::get('/panel/backups', [AdminController::class, 'showBackups'])->name('showBackups');
113+
Route::post('/panel/theme', [AdminController::class, 'deleteTheme'])->name('deleteTheme');
114+
Route::get('/panel/theme', [AdminController::class, 'showThemes'])->name('showThemes');
113115
Route::get('/update', function () {return view('update', []);});
114116

115117
Route::get('/updating', function (\Codedge\Updater\UpdaterManager $updater) {

0 commit comments

Comments
 (0)