Create units

This commit is contained in:
Dennis Eichhorn 2016-11-05 22:23:48 +01:00
parent 7f5e9a8b85
commit 62c349d3d3
3 changed files with 24 additions and 15 deletions

View File

@ -263,29 +263,38 @@ class Controller extends ModuleAbstract implements WebInterface
return $view;
}
public function apiUnitCreate(RequestAbstract $request, ResponseAbstract $response, $data = null)
private function validateUnitCreate(RequestAbstract $request) : array
{
$val = [];
if (
($val['name'] = empty($request->getData('name')))
($val['name'] = empty($request->getData('name')))
|| ($val['parent'] = (
$request->getData('parent') !== null
&& !is_numeric($request->getData('parent'))
))
|| ($val['status'] = (
$request->getData('status') === null
|| !Status::isValidValue((int) $request->getData('status'))
))
!empty($request->getData('parent'))
&& !is_numeric($request->getData('parent'))
))
|| ($val['status'] = (
$request->getData('status') === null
|| !Status::isValidValue((int) $request->getData('status'))
))
) {
$response->set('unit_create_validation', new FormValidation($val));
return $val;
}
return [];
}
public function apiUnitCreate(RequestAbstract $request, ResponseAbstract $response, $data = null)
{
if (!empty($val = $this->validateUnitCreate($request))) {
$response->set('unit_create', new FormValidation($val));
return;
}
$unit = new Unit();
$unit->setName($request->getData('name'));
$unit->setDescription($request->getData('description') ?? '');
$unit->setStatus((int) $request->getData('status'));
$unit->setDescription($request->getData('desc'));
UnitMapper::create($unit);

View File

@ -23,7 +23,7 @@ class Unit implements ArrayableInterface, \JsonSerializable
private $name = '';
private $parent = 0;
private $parent = null;
private $description = '';
@ -44,7 +44,7 @@ class Unit implements ArrayableInterface, \JsonSerializable
$this->name = $name;
}
public function getParent() : int
public function getParent()
{
return $this->parent;
}

View File

@ -30,8 +30,8 @@ echo $this->getData('nav')->render(); ?>
<tr><td><span class="input"><button type="button" formaction=""><i class="fa fa-book"></i></button><input type="text" name="parent" id="iParent"></span>
<tr><td><label for="iStatus"><?= $this->getText('Status'); ?></label>
<tr><td><select name="status" id="iStatus">
<option><?= $this->getText('Active'); ?>
<option><?= $this->getText('Inactive'); ?>
<option value="<?= \Modules\Organization\Models\Status::ACTIVE; ?>"><?= $this->getText('Active'); ?>
<option value="<?= \Modules\Organization\Models\Status::INACTIVE; ?>"><?= $this->getText('Inactive'); ?>
</select>
<tr><td><label for="iDescription"><?= $this->getText('Description'); ?></label>
<tr><td><textarea name="description" id="iDescription" placeholder="&#xf040;"></textarea>