Enabled uploading documents through the API

This commit is contained in:
Hillel Coren 2016-05-30 13:44:49 +03:00
parent e7caa58d75
commit c061808677
3 changed files with 18 additions and 12 deletions

View File

@ -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()

View File

@ -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([

View File

@ -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'
];
}
}