user(); return $user->can('edit', $this->recurring_invoice); } public function rules() { $rules = []; $rules['file'] = 'bail|sometimes|array'; $rules['file.*'] = $this->fileValidation(); $rules['documents'] = 'bail|sometimes|array'; $rules['documents.*'] = $this->fileValidation(); $rules['is_public'] = 'sometimes|boolean'; return $rules; } public function prepareForValidation() { $input = $this->all(); if ($this->file('documents') instanceof \Illuminate\Http\UploadedFile) { $this->files->set('documents', [$this->file('documents')]); } if ($this->file('file') instanceof \Illuminate\Http\UploadedFile) { $this->files->set('file', [$this->file('file')]); } if (isset($input['is_public'])) { $input['is_public'] = $this->toBoolean($input['is_public']); } $this->replace($input); } }