Validating File Uploads

You can validate your uploads by extending Burzum\FileStorage\Storage\Listener\ValidationListener and implement your validation methods just like you do in table objects:

use Burzum\FileStorage\Storage\Listener\ValidationListener;
use Cake\Validation\Validator;

class TestValidationListener extends ValidationListener {

    public function validationAvatar(Validator $validator) {
        $validator->add('file', 'mimeType', [
            'rule' => ['mimeType', ['image/jpg', 'image/jpeg', 'image/png']]
        ]);

        $validator->add('file', 'imageSize', [
            'rule' => ['imageSize', [
                'height' => ['>=', 200],
                'width' => ['>=', 200]
            ]]
        ]);

        return $validator;
    }
}

EventManager::instance()->on(new FileValidationListener());

This will attach the listener to the Model.initialize() event and add your configured validators to the FileStorage table.

References: