Skip to content

Commit b51b7c4

Browse files
committed
Added independent backup system
1 parent 33fd0f7 commit b51b7c4

File tree

4 files changed

+67
-1
lines changed

4 files changed

+67
-1
lines changed

resources/views/backup.blade.php

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
<title>Backup</title>
2+
@extends('layouts.updater')
3+
4+
@Push('updater-body')
5+
<div class="container">
6+
7+
8+
@if($_SERVER['QUERY_STRING'] === '')
9+
<?php //landing page ?>
10+
11+
<div class="logo-container fadein">
12+
<img class="logo-img" src="{{ asset('littlelink/images/just-gear.svg') }}" alt="Logo">
13+
<div class="logo-centered">l</div>
14+
</div>
15+
<h1>Backup</h1>
16+
<h4 class="">You can back up your entire instance:</h4>
17+
<h5 class="">The backup system won't save more than two backups at a time.</h5>
18+
<br><div class="row">
19+
&ensp;<a class="btn" href="{{url()->current()}}/?backup"><button><i class="fa-solid fa-floppy-disk"></i> Backup Instance</button></a>&ensp;
20+
&ensp;<a class="btn" href="{{ route('showBackups') }}"><button><i class="fa-solid fa-box-archive"></i> All Backups</button></a>&ensp;
21+
</div>
22+
@endif
23+
24+
25+
@if($_SERVER['QUERY_STRING'] === 'backup')
26+
<?php //creating backup... ?>
27+
@Push('updater-head')
28+
<meta http-equiv="refresh" content="2; URL={{url()->current()}}/?backups" />
29+
@endpush
30+
<div class="logo-container fadein">
31+
<img class="logo-img loading" src="{{ asset('littlelink/images/just-gear.svg') }}" alt="Logo">
32+
<div class="logo-centered">l</div>
33+
</div>
34+
<h1 class="loadingtxt">Creating backup</h1>
35+
@endif
36+
37+
@if($_SERVER['QUERY_STRING'] === 'backups')
38+
<?php Artisan::call('backup:clean');
39+
Artisan::call('backup:run', ['--only-files' => true]);
40+
$tst = base_path('backups/');
41+
file_put_contents($tst.'CANUPDATE', '');
42+
$URL = Route::current()->getName();
43+
header("Location: ".$URL."?success");
44+
exit(); ?>
45+
@endif
46+
47+
@if($_SERVER['QUERY_STRING'] === 'success')
48+
<?php //after successfully updating ?>
49+
50+
<div class="logo-container fadein">
51+
<img class="logo-img" src="{{ asset('littlelink/images/just-gear.svg') }}" alt="Logo">
52+
<div class="logo-centered">l</div>
53+
</div>
54+
<h1>Success!</h1>
55+
<h4 class="">The backup was successful, you can now return to the Admin Panel or see all your backups.</h4>
56+
<br><div class="row">
57+
&ensp;<a class="btn" href="{{ route('studioIndex') }}"><button><i class="fa-solid fa-house-laptop btn"></i> Admin Panel</button></a>&ensp;
58+
&ensp;<a class="btn" href="{{ route('showBackups') }}"><button><i class="fa-solid fa-box-archive"></i> All Backups</button></a>&ensp;
59+
</div>
60+
@endif
61+
62+
</div>
63+
@endpush

resources/views/panel/backups.blade.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
@extends('layouts.sidebar')
22

33
@section('content')
4-
<style>.buttondm{display:inline-block;text-decoration:none;height:48px;text-align:center;vertical-align:middle;font-size:18px;width:300px;font-weight:700;line-height:48px;letter-spacing:.1px;white-space:wrap;border-radius:8px;cursor:pointer}.button-hover,.credit-hover{display:inline-block;-webkit-transform:perspective(1px) translateZ(0);transform:perspective(1px) translateZ(0);box-shadow:0 0 1px rgba(0,0,0,0);-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transition-property:transform;transition-property:transform}.button-hover:active,.credit-hover:active,.button-hover:focus,.credit-hover:focus,.button-hover:hover,.credit-hover:hover{-webkit-transform:scale(1.06);transform:scale(1.06)}.container{align-items:center;display:flex;flex-direction:column;justify-content:center;height:50%;width:100%}</style>
4+
<style>button{border-style: none;background-color: #0085ff;color: #fff;padding: 13px;border-radius: 5px;}button:hover {background-color:#0065c1;color: #FFF;box-shadow: 0 10px 20px -10px rgba(0,0,0, 0.6);}.btn {color: #FFF !important;}.buttondm{display:inline-block;text-decoration:none;height:48px;text-align:center;vertical-align:middle;font-size:18px;width:300px;font-weight:700;line-height:48px;letter-spacing:.1px;white-space:wrap;border-radius:8px;cursor:pointer}.button-hover,.credit-hover{display:inline-block;-webkit-transform:perspective(1px) translateZ(0);transform:perspective(1px) translateZ(0);box-shadow:0 0 1px rgba(0,0,0,0);-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transition-property:transform;transition-property:transform}.button-hover:active,.credit-hover:active,.button-hover:focus,.credit-hover:focus,.button-hover:hover,.credit-hover:hover{-webkit-transform:scale(1.06);transform:scale(1.06)}.container{align-items:center;display:flex;flex-direction:column;justify-content:center;height:50%;width:100%}</style>
55
<!-- Custom icons font-awesome -->
66
<script src="https://kit.fontawesome.com/c4a5e06183.js" crossorigin="anonymous"></script>
77
@if (file_exists(base_path('backups/updater-backups/')) and is_dir(base_path('backups/updater-backups/')))
@@ -42,4 +42,5 @@
4242
<div class="container">
4343
<h3>No backups found</h3></div>
4444
@endif
45+
<center><a class="btn" href="{{ url('backup') }}"><button><i class="fa-solid fa-floppy-disk"></i> Backup your instance</button></a></center>
4546
@endsection

resources/views/vendor/env-editor/components/_backup.blade.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
<div>
44
<div class="h5 my-4">{{__($translatePrefix.'title')}}</div>
55
<div class="h5 my-4">You can find your updater backups <span><a href="{{ url('panel/backups') }}">here</a></span></div>
6+
<div class="h5 my-4">You can backup your instance <span><a href="{{ url('backup') }}">here</a></span></div>
67
<div>
78
<button class="btn-info btn " @click="createBackUp">{{__($translatePrefix.'btn.backUpCurrentEnv')}}</button>
89
<a class="btn-info btn" href="{{route(config($package.'.route.name').'.download')}}">{{__($translatePrefix.'btn.downloadCurrentEnv')}}</a>

routes/web.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@
121121
Route::post('/panel/theme', [AdminController::class, 'deleteTheme'])->name('deleteTheme');
122122
Route::get('/panel/theme', [AdminController::class, 'showThemes'])->name('showThemes');
123123
Route::get('/update', function () {return view('update', []);});
124+
Route::get('/backup', function () {return view('backup', []);});
124125

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

0 commit comments

Comments
 (0)