diff --git a/Controller/ApiController.php b/Controller/ApiController.php index 74a97c4..3a34457 100644 --- a/Controller/ApiController.php +++ b/Controller/ApiController.php @@ -73,17 +73,17 @@ final class ApiController extends Controller */ public function createProjectFromRequest(RequestAbstract $request) : Project { - $project = new Project(); - $project->name = $request->getDataString('name') ?? ''; - $project->descriptionRaw = $request->getDataString('plain') ?? ''; - $project->description = Markdown::parse($request->getDataString('plain') ?? ''); - $project->start = $request->getDataDateTime('start') ?? $project->start; - $project->end = $request->getDataDateTime('end') ?? $project->end; - $project->createdBy = new NullAccount($request->header->account); - $project->progressType = ProgressType::tryFromValue($request->getDataInt('progresstype')) ?? ProgressType::MANUAL; - $project->progress = $request->getDataInt('progress') ?? 0; - $project->budgetCosts->value = $request->getDataInt('budgetcosts') ?? 0; - $project->actualCosts->value = $request->getDataInt('actualcosts') ?? 0; + $project = new Project(); + $project->name = $request->getDataString('name') ?? ''; + $project->descriptionRaw = $request->getDataString('plain') ?? ''; + $project->description = Markdown::parse($request->getDataString('plain') ?? ''); + $project->start = $request->getDataDateTime('start') ?? $project->start; + $project->end = $request->getDataDateTime('end') ?? $project->end; + $project->createdBy = new NullAccount($request->header->account); + $project->progressType = ProgressType::tryFromValue($request->getDataInt('progresstype')) ?? ProgressType::MANUAL; + $project->progress = $request->getDataInt('progress') ?? 0; + $project->budgetCosts->value = $request->getDataInt('budgetcosts') ?? 0; + $project->actualCosts->value = $request->getDataInt('actualcosts') ?? 0; // @todo implement unit //$project->unit = $this->app->unitId; diff --git a/Theme/Backend/projectmanagement-view.tpl.php b/Theme/Backend/projectmanagement-view.tpl.php index 92bfc6c..cf748a6 100644 --- a/Theme/Backend/projectmanagement-view.tpl.php +++ b/Theme/Backend/projectmanagement-view.tpl.php @@ -12,10 +12,11 @@ */ declare(strict_types=1); -use Modules\EventManagement\Models\ProgressType; +use Modules\ProjectManagement\Models\NullProject; +use Modules\ProjectManagement\Models\ProgressType; /** \Modules\ProjectManagement\Models\Project $project */ -$project = $this->data['project']; +$project = $this->data['project'] ?? new NullProject(); $isNew = $project->id === 0; diff --git a/tests/Models/ProjectMapperTest.php b/tests/Models/ProjectMapperTest.php index 0846f8e..2ecd2cf 100755 --- a/tests/Models/ProjectMapperTest.php +++ b/tests/Models/ProjectMapperTest.php @@ -34,7 +34,7 @@ final class ProjectMapperTest extends \PHPUnit\Framework\TestCase { $project = new Project(); - $project->name = 'Projectname'; + $project->name = 'Projectname'; $project->description = 'Description'; $project->createdBy = new NullAccount(1); $project->start = new \DateTime('2000-05-05'); @@ -59,7 +59,7 @@ final class ProjectMapperTest extends \PHPUnit\Framework\TestCase $project->tasks[] = $task; $project->tasks[] = $task2; - $project->progress = 10; + $project->progress = 10; $project->progressType = ProgressType::TASKS; $media = new Media(); @@ -98,7 +98,7 @@ final class ProjectMapperTest extends \PHPUnit\Framework\TestCase #[\PHPUnit\Framework\Attributes\Group('module')] public function testNewest() : void { - $newest = ProjectMapper::getAll()->sort('id', OrderType::DESC)->limit(1)->execute(); + $newest = ProjectMapper::getAll()->sort('id', OrderType::DESC)->limit(1)->executeGetArray(); self::assertCount(1, $newest); } diff --git a/tests/Models/ProjectTest.php b/tests/Models/ProjectTest.php index 321e275..100426d 100755 --- a/tests/Models/ProjectTest.php +++ b/tests/Models/ProjectTest.php @@ -80,11 +80,11 @@ final class ProjectTest extends \PHPUnit\Framework\TestCase #[\PHPUnit\Framework\Attributes\Group('module')] public function testSerialize() : void { - $this->project->name = 'Name'; - $this->project->description = 'Description'; - $this->project->start = new \DateTime(); - $this->project->end = new \DateTime(); - $this->project->progress = 10; + $this->project->name = 'Name'; + $this->project->description = 'Description'; + $this->project->start = new \DateTime(); + $this->project->end = new \DateTime(); + $this->project->progress = 10; $this->project->progressType = ProgressType::TASKS; $serialized = $this->project->jsonSerialize();