]> BookStack Code Mirror - bookstack/blobdiff - app/Http/Controllers/AttachmentController.php
Add git to the apt-get install packages.
[bookstack] / app / Http / Controllers / AttachmentController.php
index 54e14bfb6f4cd654c7bf7e9c2353432b373c6e6f..1b063b4eaa8a865f62974510d6c05a494962833e 100644 (file)
@@ -1,10 +1,10 @@
 <?php namespace BookStack\Http\Controllers;
 
+use BookStack\Entities\Repos\EntityRepo;
 use BookStack\Exceptions\FileUploadException;
-use BookStack\Attachment;
 use BookStack\Exceptions\NotFoundException;
-use BookStack\Repos\EntityRepo;
-use BookStack\Services\AttachmentService;
+use BookStack\Uploads\Attachment;
+use BookStack\Uploads\AttachmentService;
 use Illuminate\Http\Request;
 
 class AttachmentController extends Controller
@@ -15,7 +15,7 @@ class AttachmentController extends Controller
 
     /**
      * AttachmentController constructor.
-     * @param AttachmentService $attachmentService
+     * @param \BookStack\Uploads\AttachmentService $attachmentService
      * @param Attachment $attachment
      * @param EntityRepo $entityRepo
      */
@@ -59,11 +59,12 @@ class AttachmentController extends Controller
 
     /**
      * Update an uploaded attachment.
-     * @param int $attachmentId
      * @param Request $request
+     * @param int $attachmentId
      * @return mixed
+     * @throws \Illuminate\Validation\ValidationException
      */
-    public function uploadUpdate($attachmentId, Request $request)
+    public function uploadUpdate(Request $request, $attachmentId)
     {
         $this->validate($request, [
             'uploaded_to' => 'required|integer|exists:pages,id',
@@ -94,11 +95,12 @@ class AttachmentController extends Controller
 
     /**
      * Update the details of an existing file.
-     * @param $attachmentId
      * @param Request $request
+     * @param $attachmentId
      * @return Attachment|mixed
+     * @throws \Illuminate\Validation\ValidationException
      */
-    public function update($attachmentId, Request $request)
+    public function update(Request $request, $attachmentId)
     {
         $this->validate($request, [
             'uploaded_to' => 'required|integer|exists:pages,id',
@@ -161,11 +163,12 @@ class AttachmentController extends Controller
 
     /**
      * Update the attachment sorting.
-     * @param $pageId
      * @param Request $request
+     * @param $pageId
      * @return mixed
+     * @throws \Illuminate\Validation\ValidationException
      */
-    public function sortForPage($pageId, Request $request)
+    public function sortForPage(Request $request, $pageId)
     {
         $this->validate($request, [
             'files' => 'required|array',
@@ -201,10 +204,7 @@ class AttachmentController extends Controller
         }
 
         $attachmentContents = $this->attachmentService->getAttachmentFromStorage($attachment);
-        return response($attachmentContents, 200, [
-            'Content-Type' => 'application/octet-stream',
-            'Content-Disposition' => 'attachment; filename="'. $attachment->getFileName() .'"'
-        ]);
+        return $this->downloadResponse($attachmentContents, $attachment->getFileName());
     }
 
     /**