diff --git a/app/Http/Controllers/DocumentAPIController.php b/app/Http/Controllers/DocumentAPIController.php index 561a5c174a01..e4ca7c7fb5de 100644 --- a/app/Http/Controllers/DocumentAPIController.php +++ b/app/Http/Controllers/DocumentAPIController.php @@ -2,13 +2,21 @@ use App\Models\Document; +use App\Ninja\Repositories\DocumentRepository; +use App\Http\Requests\DocumentRequest; +use App\Http\Requests\CreateDocumentRequest; + class DocumentAPIController extends BaseAPIController { + protected $documentRepo; - public function __construct() + protected $entityType = ENTITY_DOCUMENT; + + public function __construct(DocumentRepository $documentRepo) { parent::__construct(); + $this->documentRepo = $documentRepo; } public function index() @@ -16,16 +24,18 @@ class DocumentAPIController extends BaseAPIController //stub } - public function show($publicId) + public function show(DocumentRequest $request) { - $document = Document::scope($publicId)->firstOrFail(); + $document = $request->entity(); return DocumentController::getDownloadResponse($document); } - public function store() + public function store(CreateDocumentRequest $request) { - //stub + $document = $this->documentRepo->upload($request->file); + + return $this->itemResponse($document); } public function update() diff --git a/app/Http/Controllers/DocumentController.php b/app/Http/Controllers/DocumentController.php index e4ea605d57a0..f0871a2408f2 100644 --- a/app/Http/Controllers/DocumentController.php +++ b/app/Http/Controllers/DocumentController.php @@ -102,11 +102,7 @@ class DocumentController extends BaseController public function postUpload(CreateDocumentRequest $request) { - if (!Utils::hasFeature(FEATURE_DOCUMENTS)) { - return; - } - - $result = $this->documentRepo->upload(Input::all()['file'], $doc_array); + $result = $this->documentRepo->upload($request->file, $doc_array); if(is_string($result)){ return Response::json([ diff --git a/app/Http/Requests/CreateDocumentRequest.php b/app/Http/Requests/CreateDocumentRequest.php index 33330a90895e..dca98a3ec3ed 100644 --- a/app/Http/Requests/CreateDocumentRequest.php +++ b/app/Http/Requests/CreateDocumentRequest.php @@ -9,7 +9,7 @@ class CreateDocumentRequest extends DocumentRequest */ public function authorize() { - return $this->user()->can('create', ENTITY_DOCUMENT); + return $this->user()->can('create', ENTITY_DOCUMENT) && $this->user()->hasFeature(FEATURE_DOCUMENTS); } /** @@ -20,7 +20,7 @@ class CreateDocumentRequest extends DocumentRequest public function rules() { return [ - + //'file' => 'mimes:jpg' ]; } }