]> BookStack Code Mirror - bookstack/blobdiff - app/Exports/Controllers/ImportController.php
ZIP Exports: Got zip format validation functionally complete
[bookstack] / app / Exports / Controllers / ImportController.php
index acc803a0f0d4817ebb7f9bd4d90ee049ec2dfca4..5885f7991cd014211e71600b879686db3fbc3c63 100644 (file)
@@ -2,6 +2,7 @@
 
 namespace BookStack\Exports\Controllers;
 
+use BookStack\Exports\ZipExports\ZipExportValidator;
 use BookStack\Http\Controller;
 use Illuminate\Http\Request;
 
@@ -14,11 +15,29 @@ class ImportController extends Controller
 
     public function start(Request $request)
     {
+        // TODO - Show existing imports for user (or for all users if admin-level user)
+
         return view('exports.import');
     }
 
     public function upload(Request $request)
     {
-        // TODO
+        $this->validate($request, [
+            'file' => ['required', 'file']
+        ]);
+
+        $file = $request->file('file');
+        $zipPath = $file->getRealPath();
+
+        $errors = (new ZipExportValidator($zipPath))->validate();
+        if ($errors) {
+            dd($errors);
+        }
+        dd('passed');
+        // TODO - Read existing ZIP upload and send through validator
+            // TODO - If invalid, return user with errors
+        // TODO - Upload to storage
+        // TODO - Store info/results from validator
+        // TODO - Send user to next import stage
     }
 }