AutorÃa | Ultima modificación | Ver Log |
<?php
declare(strict_types=1);
namespace LeadersLinked\Form\Media;
use Laminas\InputFilter\InputFilter;
class FileFilter extends InputFilter
{
public function __construct()
{
$this->add([
'name' => 'name',
'required' => true,
'filters' => [
['name' => \Laminas\Filter\StripTags::class],
['name' => \Laminas\Filter\StringTrim::class],
],
'validators' => [
[
'name' => \Laminas\Validator\StringLength::class,
'options' => [
'encoding' => 'UTF-8',
'max' => 100,
],
],
[
'name' => \Laminas\Validator\NotEmpty::class,
],
],
]);
$this->add([
'name' => 'file',
'required' => true,
'filters' => [
['name' => \Laminas\Filter\BaseName::class],
],
'validators' => [
[
'name' => \Laminas\Validator\NotEmpty::class,
],
[
'name' => \Laminas\Validator\File\Extension::class,
'options' => [
'extension' => ['mov', 'webm','mp4','mpeg','jpg','jpeg','png', 'wav', 'mp3']
]
],
[
'name' => \Laminas\Validator\File\MimeType::class,
'options' => [
'mimeType' => [ 'video/quicktime','video/webm', 'video/mp4', 'video/mpeg', 'image/jpg', 'image/jpeg', 'image/png', 'audio/wav', 'audio/mpeg'],
'enableHeaderCheck' => true,
]
],
],
]);
}
}