Move subtask validator methods
This commit is contained in:
@@ -36,7 +36,7 @@ class Subtask extends \Kanboard\Core\Base
|
|||||||
'status' => $status,
|
'status' => $status,
|
||||||
);
|
);
|
||||||
|
|
||||||
list($valid, ) = $this->subtask->validateCreation($values);
|
list($valid, ) = $this->subtaskValidator->validateCreation($values);
|
||||||
return $valid ? $this->subtask->create($values) : false;
|
return $valid ? $this->subtask->create($values) : false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -58,7 +58,7 @@ class Subtask extends \Kanboard\Core\Base
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
list($valid, ) = $this->subtask->validateApiModification($values);
|
list($valid, ) = $this->subtaskValidator->validateApiModification($values);
|
||||||
return $valid && $this->subtask->update($values);
|
return $valid && $this->subtask->update($values);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ class Subtask extends Base
|
|||||||
$task = $this->getTask();
|
$task = $this->getTask();
|
||||||
$values = $this->request->getValues();
|
$values = $this->request->getValues();
|
||||||
|
|
||||||
list($valid, $errors) = $this->subtask->validateCreation($values);
|
list($valid, $errors) = $this->subtaskValidator->validateCreation($values);
|
||||||
|
|
||||||
if ($valid) {
|
if ($valid) {
|
||||||
if ($this->subtask->create($values)) {
|
if ($this->subtask->create($values)) {
|
||||||
@@ -113,7 +113,7 @@ class Subtask extends Base
|
|||||||
$this->getSubtask();
|
$this->getSubtask();
|
||||||
|
|
||||||
$values = $this->request->getValues();
|
$values = $this->request->getValues();
|
||||||
list($valid, $errors) = $this->subtask->validateModification($values);
|
list($valid, $errors) = $this->subtaskValidator->validateModification($values);
|
||||||
|
|
||||||
if ($valid) {
|
if ($valid) {
|
||||||
if ($this->subtask->update($values)) {
|
if ($this->subtask->update($values)) {
|
||||||
|
|||||||
@@ -113,6 +113,7 @@ use Pimple\Container;
|
|||||||
* @property \Kanboard\Model\UserMetadata $userMetadata
|
* @property \Kanboard\Model\UserMetadata $userMetadata
|
||||||
* @property \Kanboard\Model\Webhook $webhook
|
* @property \Kanboard\Model\Webhook $webhook
|
||||||
* @property \Kanboard\Validator\PasswordResetValidator $passwordResetValidator
|
* @property \Kanboard\Validator\PasswordResetValidator $passwordResetValidator
|
||||||
|
* @property \Kanboard\Validator\SubtaskValidator $subtaskValidator
|
||||||
* @property \Kanboard\Validator\SwimlaneValidator $swimlaneValidator
|
* @property \Kanboard\Validator\SwimlaneValidator $swimlaneValidator
|
||||||
* @property \Kanboard\Validator\TaskLinkValidator $taskLinkValidator
|
* @property \Kanboard\Validator\TaskLinkValidator $taskLinkValidator
|
||||||
* @property \Kanboard\Validator\TaskValidator $taskValidator
|
* @property \Kanboard\Validator\TaskValidator $taskValidator
|
||||||
|
|||||||
@@ -4,11 +4,9 @@ namespace Kanboard\Model;
|
|||||||
|
|
||||||
use PicoDb\Database;
|
use PicoDb\Database;
|
||||||
use Kanboard\Event\SubtaskEvent;
|
use Kanboard\Event\SubtaskEvent;
|
||||||
use SimpleValidator\Validator;
|
|
||||||
use SimpleValidator\Validators;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Subtask model
|
* Subtask Model
|
||||||
*
|
*
|
||||||
* @package model
|
* @package model
|
||||||
* @author Frederic Guillot
|
* @author Frederic Guillot
|
||||||
@@ -451,90 +449,4 @@ class Subtask extends Base
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Validate creation
|
|
||||||
*
|
|
||||||
* @access public
|
|
||||||
* @param array $values Form values
|
|
||||||
* @return array $valid, $errors [0] = Success or not, [1] = List of errors
|
|
||||||
*/
|
|
||||||
public function validateCreation(array $values)
|
|
||||||
{
|
|
||||||
$rules = array(
|
|
||||||
new Validators\Required('task_id', t('The task id is required')),
|
|
||||||
new Validators\Required('title', t('The title is required')),
|
|
||||||
);
|
|
||||||
|
|
||||||
$v = new Validator($values, array_merge($rules, $this->commonValidationRules()));
|
|
||||||
|
|
||||||
return array(
|
|
||||||
$v->execute(),
|
|
||||||
$v->getErrors()
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Validate modification
|
|
||||||
*
|
|
||||||
* @access public
|
|
||||||
* @param array $values Form values
|
|
||||||
* @return array $valid, $errors [0] = Success or not, [1] = List of errors
|
|
||||||
*/
|
|
||||||
public function validateModification(array $values)
|
|
||||||
{
|
|
||||||
$rules = array(
|
|
||||||
new Validators\Required('id', t('The subtask id is required')),
|
|
||||||
new Validators\Required('task_id', t('The task id is required')),
|
|
||||||
new Validators\Required('title', t('The title is required')),
|
|
||||||
);
|
|
||||||
|
|
||||||
$v = new Validator($values, array_merge($rules, $this->commonValidationRules()));
|
|
||||||
|
|
||||||
return array(
|
|
||||||
$v->execute(),
|
|
||||||
$v->getErrors()
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Validate API modification
|
|
||||||
*
|
|
||||||
* @access public
|
|
||||||
* @param array $values Form values
|
|
||||||
* @return array $valid, $errors [0] = Success or not, [1] = List of errors
|
|
||||||
*/
|
|
||||||
public function validateApiModification(array $values)
|
|
||||||
{
|
|
||||||
$rules = array(
|
|
||||||
new Validators\Required('id', t('The subtask id is required')),
|
|
||||||
new Validators\Required('task_id', t('The task id is required')),
|
|
||||||
);
|
|
||||||
|
|
||||||
$v = new Validator($values, array_merge($rules, $this->commonValidationRules()));
|
|
||||||
|
|
||||||
return array(
|
|
||||||
$v->execute(),
|
|
||||||
$v->getErrors()
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Common validation rules
|
|
||||||
*
|
|
||||||
* @access private
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
private function commonValidationRules()
|
|
||||||
{
|
|
||||||
return array(
|
|
||||||
new Validators\Integer('id', t('The subtask id must be an integer')),
|
|
||||||
new Validators\Integer('task_id', t('The task id must be an integer')),
|
|
||||||
new Validators\MaxLength('title', t('The maximum length is %d characters', 255), 255),
|
|
||||||
new Validators\Integer('user_id', t('The user id must be an integer')),
|
|
||||||
new Validators\Integer('status', t('The status must be an integer')),
|
|
||||||
new Validators\Numeric('time_estimated', t('The time must be a numeric value')),
|
|
||||||
new Validators\Numeric('time_spent', t('The time must be a numeric value')),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,6 +86,7 @@ class ClassProvider implements ServiceProviderInterface
|
|||||||
),
|
),
|
||||||
'Validator' => array(
|
'Validator' => array(
|
||||||
'PasswordResetValidator',
|
'PasswordResetValidator',
|
||||||
|
'SubtaskValidator',
|
||||||
'SwimlaneValidator',
|
'SwimlaneValidator',
|
||||||
'TaskValidator',
|
'TaskValidator',
|
||||||
'TaskLinkValidator',
|
'TaskLinkValidator',
|
||||||
|
|||||||
101
app/Validator/SubtaskValidator.php
Normal file
101
app/Validator/SubtaskValidator.php
Normal file
@@ -0,0 +1,101 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Kanboard\Validator;
|
||||||
|
|
||||||
|
use SimpleValidator\Validator;
|
||||||
|
use SimpleValidator\Validators;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Subtask Validator
|
||||||
|
*
|
||||||
|
* @package validator
|
||||||
|
* @author Frederic Guillot
|
||||||
|
*/
|
||||||
|
class SubtaskValidator extends Base
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Validate creation
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
* @param array $values Form values
|
||||||
|
* @return array $valid, $errors [0] = Success or not, [1] = List of errors
|
||||||
|
*/
|
||||||
|
public function validateCreation(array $values)
|
||||||
|
{
|
||||||
|
$rules = array(
|
||||||
|
new Validators\Required('task_id', t('The task id is required')),
|
||||||
|
new Validators\Required('title', t('The title is required')),
|
||||||
|
);
|
||||||
|
|
||||||
|
$v = new Validator($values, array_merge($rules, $this->commonValidationRules()));
|
||||||
|
|
||||||
|
return array(
|
||||||
|
$v->execute(),
|
||||||
|
$v->getErrors()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validate modification
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
* @param array $values Form values
|
||||||
|
* @return array $valid, $errors [0] = Success or not, [1] = List of errors
|
||||||
|
*/
|
||||||
|
public function validateModification(array $values)
|
||||||
|
{
|
||||||
|
$rules = array(
|
||||||
|
new Validators\Required('id', t('The subtask id is required')),
|
||||||
|
new Validators\Required('task_id', t('The task id is required')),
|
||||||
|
new Validators\Required('title', t('The title is required')),
|
||||||
|
);
|
||||||
|
|
||||||
|
$v = new Validator($values, array_merge($rules, $this->commonValidationRules()));
|
||||||
|
|
||||||
|
return array(
|
||||||
|
$v->execute(),
|
||||||
|
$v->getErrors()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validate API modification
|
||||||
|
*
|
||||||
|
* @access public
|
||||||
|
* @param array $values Form values
|
||||||
|
* @return array $valid, $errors [0] = Success or not, [1] = List of errors
|
||||||
|
*/
|
||||||
|
public function validateApiModification(array $values)
|
||||||
|
{
|
||||||
|
$rules = array(
|
||||||
|
new Validators\Required('id', t('The subtask id is required')),
|
||||||
|
new Validators\Required('task_id', t('The task id is required')),
|
||||||
|
);
|
||||||
|
|
||||||
|
$v = new Validator($values, array_merge($rules, $this->commonValidationRules()));
|
||||||
|
|
||||||
|
return array(
|
||||||
|
$v->execute(),
|
||||||
|
$v->getErrors()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Common validation rules
|
||||||
|
*
|
||||||
|
* @access private
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
private function commonValidationRules()
|
||||||
|
{
|
||||||
|
return array(
|
||||||
|
new Validators\Integer('id', t('The subtask id must be an integer')),
|
||||||
|
new Validators\Integer('task_id', t('The task id must be an integer')),
|
||||||
|
new Validators\MaxLength('title', t('The maximum length is %d characters', 255), 255),
|
||||||
|
new Validators\Integer('user_id', t('The user id must be an integer')),
|
||||||
|
new Validators\Integer('status', t('The status must be an integer')),
|
||||||
|
new Validators\Numeric('time_estimated', t('The time must be a numeric value')),
|
||||||
|
new Validators\Numeric('time_spent', t('The time must be a numeric value')),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user