From 2f379c222d54995dc004f74ac6fcaef2d9724b14 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sun, 2 Oct 2016 12:07:05 +0200 Subject: [PATCH] Core adjustments for pending issues --- Admin/Routes/Web/Api.php | 20 +++++++++++++++++ Admin/Routes/Web/Backend.php | 13 ----------- Controller.php | 29 +++++++++++++++++++++++- Models/NullTask.php | 34 +++++++++++++++++++++++++++++ Models/TaskMapper.php | 3 +-- Theme/Backend/Lang/en.lang.php | 2 ++ Theme/Backend/task-analysis.tpl.php | 8 +++++++ Theme/Backend/task-create.tpl.php | 10 ++++----- Theme/Backend/task-single.tpl.php | 14 ++++++------ Theme/backend/Lang/en.lang.php | 2 ++ Theme/backend/task-analysis.tpl.php | 8 +++++++ Theme/backend/task-create.tpl.php | 10 ++++----- Theme/backend/task-single.tpl.php | 14 ++++++------ 13 files changed, 127 insertions(+), 40 deletions(-) create mode 100644 Admin/Routes/Web/Api.php create mode 100644 Models/NullTask.php diff --git a/Admin/Routes/Web/Api.php b/Admin/Routes/Web/Api.php new file mode 100644 index 0000000..a19df99 --- /dev/null +++ b/Admin/Routes/Web/Api.php @@ -0,0 +1,20 @@ + [ + [ + 'dest' => '\Modules\Tasks\Controller:apiTaskCreate', + 'verb' => RouteVerb::SET, + ], + ], + '^.*/api/task/element.*$' => [ + [ + 'dest' => '\Modules\Tasks\Controller:apiTaskElementCreate', + 'verb' => RouteVerb::SET, + ], + ], +]; + + diff --git a/Admin/Routes/Web/Backend.php b/Admin/Routes/Web/Backend.php index bf85247..a407d12 100644 --- a/Admin/Routes/Web/Backend.php +++ b/Admin/Routes/Web/Backend.php @@ -27,17 +27,4 @@ return [ 'verb' => RouteVerb::GET, ], ], - - '^.*/api/task$' => [ - [ - 'dest' => '\Modules\Tasks\Controller:apiTaskCreate', - 'verb' => RouteVerb::SET, - ], - ], - '^.*/api/task/element.*$' => [ - [ - 'dest' => '\Modules\Tasks\Controller:apiTaskElementCreate', - 'verb' => RouteVerb::SET, - ], - ], ]; diff --git a/Controller.php b/Controller.php index 082a5f6..0cd81b9 100644 --- a/Controller.php +++ b/Controller.php @@ -16,8 +16,10 @@ namespace Modules\Tasks; use Model\Message\Redirect; +use Model\Message\Reload; use Modules\Tasks\Models\Task; use Modules\Tasks\Models\TaskElement; +use Modules\Tasks\Models\TaskElementMapper; use Modules\Tasks\Models\TaskMapper; use Modules\Tasks\Models\TaskStatus; use Modules\Tasks\Models\TaskType; @@ -196,7 +198,32 @@ class Controller extends ModuleAbstract implements WebInterface $task->addElement($element); TaskMapper::create($task); - $response->set($request->__toString(), new Redirect(UriFactory::build('http://127.0.0.1/{/lang}/backend/task/single?id=' . $task->getId()))); + $response->set($request->__toString(), new Redirect(UriFactory::build('{/base}/{/lang}/{/app}/task/single?id=' . $task->getId()))); + } + + /** + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param mixed $data Generic data + * + * @return \Serializable + * + * @since 1.0.0 + * @author Dennis Eichhorn + */ + public function apiTaskElementCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) + { + $element = new TaskElement(); + $element->setForwarded($request->getData('forward') ?? $request->getAccount()); + $element->setCreatedAt(new \DateTime('now')); + $element->setCreatedBy($request->getAccount()); + $element->setDue(new \DateTime($request->getData('due') ?? 'now')); + $element->setStatus($request->getData('status')); + $element->setTask($request->getData('task')); + $element->setDescription($request->getData('desc')); + + TaskElementMapper::create($element); + $response->set($request->__toString(), new Reload()); } } diff --git a/Models/NullTask.php b/Models/NullTask.php new file mode 100644 index 0000000..666d071 --- /dev/null +++ b/Models/NullTask.php @@ -0,0 +1,34 @@ + + * @author Dennis Eichhorn + * @copyright 2013 Dennis Eichhorn + * @license OMS License 1.0 + * @version 1.0.0 + * @link http://orange-management.com + */ +namespace Modules\Tasks\Models; + + + +/** + * Task class. + * + * @category Modules + * @package Framework + * @author OMS Development Team + * @author Dennis Eichhorn + * @license OMS License 1.0 + * @link http://orange-management.com + * @since 1.0.0 + */ +class NullTask extends Task +{ + +} diff --git a/Models/TaskMapper.php b/Models/TaskMapper.php index c377045..e180a0d 100644 --- a/Models/TaskMapper.php +++ b/Models/TaskMapper.php @@ -64,7 +64,6 @@ class TaskMapper extends DataMapperAbstract protected static $hasMany = [ 'taskElements' => [ 'mapper' => TaskElementMapper::class, - 'relationmapper' => TaskElementMapper::class, 'table' => 'task_element', 'dst' => 'task_element_task', 'src' => null, @@ -77,7 +76,7 @@ class TaskMapper extends DataMapperAbstract * @var array * @since 1.0.0 */ - protected static $hasOne = [ + protected static $ownsOne = [ 'schedule' => [ 'mapper' => ScheduleMapper::class, 'src' => 'task_schedule', diff --git a/Theme/Backend/Lang/en.lang.php b/Theme/Backend/Lang/en.lang.php index 4b4fdb0..8e8a592 100644 --- a/Theme/Backend/Lang/en.lang.php +++ b/Theme/Backend/Lang/en.lang.php @@ -28,6 +28,7 @@ return ['Tasks' => [ 'Forwarded' => 'Forwarded', 'From' => 'From', 'Group' => 'Group', + 'History' => 'History', 'Interval' => 'Interval', 'InTime' => 'In Time', 'Message' => 'Message', @@ -49,6 +50,7 @@ return ['Tasks' => [ 'Task' => 'Task', 'Tasks' => 'Tasks', 'Template' => 'Template', + 'Time' => 'Time', 'Title' => 'Title', 'To' => 'To', 'Today' => 'Today', diff --git a/Theme/Backend/task-analysis.tpl.php b/Theme/Backend/task-analysis.tpl.php index 6d8e67a..65986c5 100644 --- a/Theme/Backend/task-analysis.tpl.php +++ b/Theme/Backend/task-analysis.tpl.php @@ -48,3 +48,11 @@ echo $this->getData('nav')->render(); ?> + +
+ +
+

getText('History'); ?>

+
+
+
diff --git a/Theme/Backend/task-create.tpl.php b/Theme/Backend/task-create.tpl.php index a5e92de..929c2d2 100644 --- a/Theme/Backend/task-create.tpl.php +++ b/Theme/Backend/task-create.tpl.php @@ -22,19 +22,19 @@ echo $this->getData('nav')->render(); ?>

getText('Task'); ?>

-
+
-
+
-
+
-
+
-
+
diff --git a/Theme/Backend/task-single.tpl.php b/Theme/Backend/task-single.tpl.php index 806e750..99ffeaf 100644 --- a/Theme/Backend/task-single.tpl.php +++ b/Theme/Backend/task-single.tpl.php @@ -71,19 +71,19 @@ foreach ($elements as $key => $element) : $c++;
-
+
-
+
-
-
-
+
+
-
-
+
+
diff --git a/Theme/backend/Lang/en.lang.php b/Theme/backend/Lang/en.lang.php index 4b4fdb0..8e8a592 100644 --- a/Theme/backend/Lang/en.lang.php +++ b/Theme/backend/Lang/en.lang.php @@ -28,6 +28,7 @@ return ['Tasks' => [ 'Forwarded' => 'Forwarded', 'From' => 'From', 'Group' => 'Group', + 'History' => 'History', 'Interval' => 'Interval', 'InTime' => 'In Time', 'Message' => 'Message', @@ -49,6 +50,7 @@ return ['Tasks' => [ 'Task' => 'Task', 'Tasks' => 'Tasks', 'Template' => 'Template', + 'Time' => 'Time', 'Title' => 'Title', 'To' => 'To', 'Today' => 'Today', diff --git a/Theme/backend/task-analysis.tpl.php b/Theme/backend/task-analysis.tpl.php index 6d8e67a..65986c5 100644 --- a/Theme/backend/task-analysis.tpl.php +++ b/Theme/backend/task-analysis.tpl.php @@ -48,3 +48,11 @@ echo $this->getData('nav')->render(); ?>
+ +
+ +
+

getText('History'); ?>

+
+
+
diff --git a/Theme/backend/task-create.tpl.php b/Theme/backend/task-create.tpl.php index a5e92de..929c2d2 100644 --- a/Theme/backend/task-create.tpl.php +++ b/Theme/backend/task-create.tpl.php @@ -22,19 +22,19 @@ echo $this->getData('nav')->render(); ?>

getText('Task'); ?>

-
+
-
+
-
+
-
+
-
+
diff --git a/Theme/backend/task-single.tpl.php b/Theme/backend/task-single.tpl.php index 806e750..99ffeaf 100644 --- a/Theme/backend/task-single.tpl.php +++ b/Theme/backend/task-single.tpl.php @@ -71,19 +71,19 @@ foreach ($elements as $key => $element) : $c++;
-
+
-
+
-
-
-
+
+
-
-
+
+