|
|
<?php |
|
|
|
|
|
namespace Kanboard\Validator; |
|
|
|
|
|
use SimpleValidator\Validator; |
|
|
use SimpleValidator\Validators; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class ExternalLinkValidator extends BaseValidator |
|
|
{ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function validateCreation(array $values) |
|
|
{ |
|
|
$v = new Validator($values, $this->commonValidationRules()); |
|
|
|
|
|
return array( |
|
|
$v->execute(), |
|
|
$v->getErrors() |
|
|
); |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function validateModification(array $values) |
|
|
{ |
|
|
$rules = array( |
|
|
new Validators\Required('id', t('The id is required')), |
|
|
); |
|
|
|
|
|
$v = new Validator($values, array_merge($rules, $this->commonValidationRules())); |
|
|
|
|
|
return array( |
|
|
$v->execute(), |
|
|
$v->getErrors() |
|
|
); |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private function commonValidationRules() |
|
|
{ |
|
|
return array( |
|
|
new Validators\Required('url', t('Field required')), |
|
|
new Validators\MaxLength('url', t('The maximum length is %d characters', 65535), 65535), |
|
|
new Validators\Required('title', t('Field required')), |
|
|
new Validators\MaxLength('title', t('The maximum length is %d characters', 65535), 65535), |
|
|
new Validators\Required('link_type', t('Field required')), |
|
|
new Validators\MaxLength('link_type', t('The maximum length is %d characters', 100), 100), |
|
|
new Validators\Required('dependency', t('Field required')), |
|
|
new Validators\MaxLength('dependency', t('The maximum length is %d characters', 100), 100), |
|
|
new Validators\Integer('id', t('This value must be an integer')), |
|
|
new Validators\Required('task_id', t('Field required')), |
|
|
new Validators\Integer('task_id', t('This value must be an integer')), |
|
|
); |
|
|
} |
|
|
} |
|
|
|