From ece1f87d9562ba763465460ab2b61cc685c749c5 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sat, 27 Oct 2018 20:42:24 +0200 Subject: [PATCH] fix reporter tpl form, task display --- Admin/Installer.php | 1 + Controller/ApiController.php | 10 ++++-- Models/Task.php | 2 +- Models/TaskElement.php | 40 +++++++++++++++++++++ Models/TaskElementMapper.php | 1 + Theme/Backend/Components/Tasks/list.tpl.php | 10 ++++-- Theme/Backend/Lang/en.lang.php | 1 + Theme/Backend/task-dashboard.tpl.php | 11 ++++-- Theme/Backend/task-single.tpl.php | 17 +++++++-- 9 files changed, 84 insertions(+), 9 deletions(-) diff --git a/Admin/Installer.php b/Admin/Installer.php index 778b980..84dce4a 100644 --- a/Admin/Installer.php +++ b/Admin/Installer.php @@ -114,6 +114,7 @@ class Installer extends InstallerAbstract `task_element_task` int(11) NOT NULL, `task_element_created_by` int(11) NOT NULL, `task_element_status` tinyint(1) NOT NULL, + `task_element_priority` tinyint(1) NOT NULL, `task_element_due` datetime NOT NULL, `task_element_forwarded` int(11) DEFAULT NULL, `task_element_created_at` datetime NOT NULL, diff --git a/Controller/ApiController.php b/Controller/ApiController.php index 42df4df..cdecca4 100644 --- a/Controller/ApiController.php +++ b/Controller/ApiController.php @@ -92,7 +92,12 @@ class ApiController extends Controller $task = $this->createTaskFromRequest($request); TaskMapper::create($task); - $response->set($request->getUri()->__toString(), $task->jsonSerialize()); + $response->set($request->getUri()->__toString(), [ + 'status' => NotificationLevel::OK, + 'title' => 'Task', + 'message' => 'Task successfully created.', + 'response' => $task->jsonSerialize() + ]); } /** @@ -114,12 +119,13 @@ class ApiController extends Controller $task->setDue(new \DateTime((string) ($request->getData('due') ?? 'now'))); $task->setStatus(TaskStatus::OPEN); $task->setType(TaskType::SINGLE); - $task->setPriority(TaskPriority::NONE); + $task->setPriority((int) $request->getData('priority')); $element = new TaskElement(); $element->setForwarded((int) ($request->getData('forward') ?? $request->getHeader()->getAccount())); $element->setCreatedBy($task->getCreatedBy()); $element->setDue($task->getDue()); + $element->setPriority($task->getPriority()); $element->setStatus(TaskStatus::OPEN); $task->addElement($element); diff --git a/Models/Task.php b/Models/Task.php index 7de9a41..2933670 100644 --- a/Models/Task.php +++ b/Models/Task.php @@ -146,7 +146,7 @@ class Task implements \JsonSerializable * @var int * @since 1.0.0 */ - protected $priority = TaskPriority::MEDIUM; + protected $priority = TaskPriority::NONE; /** * Media files diff --git a/Models/TaskElement.php b/Models/TaskElement.php index 205f5a0..745725d 100644 --- a/Models/TaskElement.php +++ b/Models/TaskElement.php @@ -91,6 +91,14 @@ class TaskElement implements \JsonSerializable */ private $due = null; + /** + * Priority + * + * @var int + * @since 1.0.0 + */ + protected $priority = TaskPriority::NONE; + /** * Forwarded to. * @@ -260,6 +268,38 @@ class TaskElement implements \JsonSerializable $this->due = $due; } + /** + * Get priority + * + * @return int + * + * @since 1.0.0 + */ + public function getPriority() : int + { + return $this->priority; + } + + /** + * Set priority + * + * @param int $priority Task priority + * + * @return void + * + * @throws InvalidEnumValue + * + * @since 1.0.0 + */ + public function setPriority(int $priority) : void + { + if (!TaskPriority::isValidValue($priority)) { + throw new InvalidEnumValue((string) $priority); + } + + $this->priority = $priority; + } + /** * Get forwarded * diff --git a/Models/TaskElementMapper.php b/Models/TaskElementMapper.php index a0fd814..95c4b97 100644 --- a/Models/TaskElementMapper.php +++ b/Models/TaskElementMapper.php @@ -41,6 +41,7 @@ class TaskElementMapper extends DataMapperAbstract 'task_element_desc' => ['name' => 'task_element_desc', 'type' => 'string', 'internal' => 'description'], 'task_element_desc_raw' => ['name' => 'task_element_desc_raw', 'type' => 'string', 'internal' => 'descriptionRaw'], 'task_element_status' => ['name' => 'task_element_status', 'type' => 'int', 'internal' => 'status'], + 'task_element_priority' => ['name' => 'task_element_priority', 'type' => 'int', 'internal' => 'priority'], 'task_element_due' => ['name' => 'task_element_due', 'type' => 'DateTime', 'internal' => 'due'], 'task_element_forwarded' => ['name' => 'task_element_forwarded', 'type' => 'int', 'internal' => 'forwarded'], 'task_element_task' => ['name' => 'task_element_task', 'type' => 'int', 'internal' => 'task'], diff --git a/Theme/Backend/Components/Tasks/list.tpl.php b/Theme/Backend/Components/Tasks/list.tpl.php index dc57fb8..6e1a1d2 100644 --- a/Theme/Backend/Components/Tasks/list.tpl.php +++ b/Theme/Backend/Components/Tasks/list.tpl.php @@ -2,7 +2,7 @@ getHtml('Tasks', 'Tasks') ?> getHtml('Status', 'Tasks') ?> - getHtml('Due', 'Tasks') ?> + getHtml('Due/Priority', 'Tasks') ?> getHtml('Title', 'Tasks') ?> @@ -16,7 +16,13 @@ elseif ($task->getStatus() === \Modules\Tasks\Models\TaskStatus::SUSPENDED) { $color = 'yellow'; } ;?> getHtml('S' . $task->getStatus(), 'Tasks') ?> - printHtml($task->getDue()->format('Y-m-d H:i')); ?> + + getPriority() === \Modules\Tasks\Models\TaskPriority::NONE) : ?> + printHtml($task->getDue()->format('Y-m-d H:i')); ?> + + getHtml('P' . $task->getPriority()); ?> + + printHtml($task->getTitle()); ?> getHtml('Empty', 0, 0); ?> diff --git a/Theme/Backend/Lang/en.lang.php b/Theme/Backend/Lang/en.lang.php index fe8bc74..dfe2a70 100644 --- a/Theme/Backend/Lang/en.lang.php +++ b/Theme/Backend/Lang/en.lang.php @@ -22,6 +22,7 @@ return ['Tasks' => [ 'Default' => 'Default', 'Day' => 'Day', 'Due' => 'Due', + 'Due/Priority' => 'Due/Priority', 'Forward' => 'Forward', 'Forwarded' => 'Forwarded', 'From' => 'From', diff --git a/Theme/Backend/task-dashboard.tpl.php b/Theme/Backend/task-dashboard.tpl.php index 4c1257c..a026c04 100644 --- a/Theme/Backend/task-dashboard.tpl.php +++ b/Theme/Backend/task-dashboard.tpl.php @@ -27,7 +27,7 @@ echo $this->getData('nav')->render(); ?> getHtml('Tasks') ?> getHtml('Status') ?> - getHtml('Due') ?> + getHtml('Due/Priority') ?> getHtml('Title') ?> getHtml('Creator') ?> getHtml('Created') ?> @@ -43,7 +43,14 @@ echo $this->getData('nav')->render(); ?> elseif ($task->getStatus() === TaskStatus::SUSPENDED) { $color = 'yellow'; } ?> getHtml('S' . $task->getStatus()) ?> - printHtml($task->getDue()->format('Y-m-d H:i')); ?> + + + getPriority() === \Modules\Tasks\Models\TaskPriority::NONE) : ?> + printHtml($task->getDue()->format('Y-m-d H:i')); ?> + + getHtml('P' . $task->getPriority()); ?> + + printHtml($task->getTitle()); ?> printHtml($task->getCreatedBy()->getName1()); ?> printHtml($task->getCreatedAt()->format('Y-m-d H:i')); ?> diff --git a/Theme/Backend/task-single.tpl.php b/Theme/Backend/task-single.tpl.php index d9e098a..00dbe03 100644 --- a/Theme/Backend/task-single.tpl.php +++ b/Theme/Backend/task-single.tpl.php @@ -12,6 +12,7 @@ */ use \Modules\Tasks\Models\TaskStatus; +use \Modules\Tasks\Models\TaskPriority; /** * @var \phpOMS\Views\View $this @@ -30,7 +31,13 @@ echo $this->getData('nav')->render(); ?>
-
Due printHtml($task->getDue()->format('Y/m/d H:i')); ?>
+
+ getPriority() === TaskPriority::NONE) : ?> + Due: printHtml($task->getDue()->format('Y/m/d H:i')); ?> + + Priority: getHtml('P' . $task->getPriority()) ?> + +
Created printHtml($task->getCreatedAt()->format('Y/m/d H:i')); ?>

printHtml($task->getTitle()); ?>

@@ -111,7 +118,13 @@ echo $this->getData('nav')->render(); ?> $element->getStatus() !== TaskStatus::DONE || $element->getStatus() !== TaskStatus::SUSPENDED || $c != $cElements ) : ?> -
Due printHtml($element->getDue()->format('Y-m-d H:i')); ?>
+
+ getPriority() === TaskPriority::NONE) : ?> + Due: printHtml($element->getDue()->format('Y/m/d H:i')); ?> + + Priority: getHtml('P' . $element->getPriority()) ?> + +