diff --git a/app/Http/Requests/BackupUploadRequest.php b/app/Http/Requests/BackupUploadRequest.php
new file mode 100644
index 0000000..51b6e90
--- /dev/null
+++ b/app/Http/Requests/BackupUploadRequest.php
@@ -0,0 +1,52 @@
+check();
+ }
+
+ /**
+ * Get the validation rules that apply to the request.
+ *
+ * @return array
+ */
+ public function rules()
+ {
+ return [
+ 'backup_file' => 'required|sql_gz',
+ ];
+ }
+
+ public function messages()
+ {
+ return [
+ 'backup_file.sql_gz' => 'Invalid file type, must be .gz file',
+ ];
+ }
+
+ protected function getValidatorInstance()
+ {
+ $validator = parent::getValidatorInstance();
+
+ $validator->addImplicitExtension('sql_gz', function ($attribute, $value, $parameters) {
+ if ($value) {
+ return $value->getClientOriginalExtension() == 'gz';
+ }
+
+ return false;
+ });
+
+ return $validator;
+ }
+}
diff --git a/resources/lang/en/app.php b/resources/lang/en/app.php
index 97d4bb6..ccc86db 100644
--- a/resources/lang/en/app.php
+++ b/resources/lang/en/app.php
@@ -33,4 +33,7 @@ return [
'select_from_existing_males' => 'Select from Existing Males',
'select_from_existing_females' => 'Select from Existing Females',
'select_from_existing_couples' => 'Select from Existing Couples',
+ 'restore' => 'Restore',
+ 'download' => 'Download',
+ 'delete' => 'Delete',
];
\ No newline at end of file
diff --git a/resources/lang/en/backup.php b/resources/lang/en/backup.php
new file mode 100644
index 0000000..d2d5311
--- /dev/null
+++ b/resources/lang/en/backup.php
@@ -0,0 +1,27 @@
+ 'Database Backup Manager',
+ 'list' => 'Backup File List',
+ 'actions' => 'Actions',
+ 'empty' => 'No backup file available.',
+
+ // Actions
+ 'create' => 'Create Backup File',
+ 'delete' => 'Delete this backup file',
+ 'sure_to_delete_file' => 'Are you sure to delete this file ":filename"?',
+ 'confirm_delete' => 'YES, please delete this file!',
+ 'cancel_delete' => 'Cancel Delete',
+ 'restore' => 'Restore database from file',
+ 'sure_to_restore' => 'Are you sure to restore database with this backup file ":filename"?
Please make sure your current database has been backed up.',
+ 'confirm_restore' => 'YES, Restore Database!',
+ 'cancel_restore' => 'Cancel Restore',
+ 'download' => 'Download this file',
+ 'upload' => 'Upload Backup File',
+
+ // Attributes
+ 'file_name' => 'File Name',
+ 'file_size' => 'File Size',
+ 'created_at' => 'Created at',
+];
\ No newline at end of file
diff --git a/resources/lang/id/app.php b/resources/lang/id/app.php
index 13e32b0..fadf826 100644
--- a/resources/lang/id/app.php
+++ b/resources/lang/id/app.php
@@ -33,4 +33,7 @@ return [
'select_from_existing_males' => 'Pilih dari Pria terdaftar',
'select_from_existing_females' => 'Pilih dari Wanita terdaftar',
'select_from_existing_couples' => 'Pilih Pasangan Pernikahan',
+ 'restore' => 'Restore',
+ 'download' => 'Download',
+ 'delete' => 'Hapus',
];
\ No newline at end of file
diff --git a/resources/lang/id/backup.php b/resources/lang/id/backup.php
new file mode 100644
index 0000000..912983b
--- /dev/null
+++ b/resources/lang/id/backup.php
@@ -0,0 +1,27 @@
+ 'Database Backup Manager',
+ 'list' => 'Daftar File Backup',
+ 'actions' => 'Pilihan',
+ 'empty' => 'Belum ada file backup.',
+
+ // Actions
+ 'create' => 'Buat File Backup',
+ 'delete' => 'Hapus file backup ini',
+ 'sure_to_delete_file' => 'Anda yakin akan menghapus file ":filename" ini?',
+ 'confirm_delete' => 'YA, silakan hapus file ini!',
+ 'cancel_delete' => 'Batal Hapus',
+ 'restore' => 'Restore database dari file',
+ 'sure_to_restore' => 'Anda yakin akan me-restore database dengan file backup ini ":filename"?
Harap dipastikan database saat ini sudah di-backup.',
+ 'confirm_restore' => 'YA, Restore Database!',
+ 'cancel_restore' => 'Batal Restore',
+ 'download' => 'Download file ini',
+ 'upload' => 'Upload File Backup',
+
+ // Attributes
+ 'file_name' => 'Name File',
+ 'file_size' => 'Ukuran File',
+ 'created_at' => 'Dibuat pada',
+];
\ No newline at end of file
diff --git a/resources/views/backups/index.blade.php b/resources/views/backups/index.blade.php
index d8e87c1..4f92dae 100755
--- a/resources/views/backups/index.blade.php
+++ b/resources/views/backups/index.blade.php
@@ -3,7 +3,7 @@
@section('title',trans('backup.index_title'))
@section('content')
-