This commit is contained in:
Dennis Eichhorn 2023-05-30 13:59:19 +00:00
commit 59b72d64ec
12 changed files with 42 additions and 66 deletions

View File

@ -86,7 +86,7 @@ final class ApiController extends Controller
public function apiWorkflowExport(HttpRequest $request, HttpResponse $response, mixed $data = null) : void public function apiWorkflowExport(HttpRequest $request, HttpResponse $response, mixed $data = null) : void
{ {
if (!empty($val = $this->validateExport($request))) { if (!empty($val = $this->validateExport($request))) {
$response->set('export', new FormValidation($val)); $response->data['export'] = new FormValidation($val);
$response->header->status = RequestStatusCode::R_400; $response->header->status = RequestStatusCode::R_400;
return; return;
@ -124,7 +124,7 @@ final class ApiController extends Controller
$view = $this->createView($instance, $request, $response); $view = $this->createView($instance, $request, $response);
$this->setWorkflowResponseHeader($view, $instance->template->name, $request, $response); $this->setWorkflowResponseHeader($view, $instance->template->name, $request, $response);
$view->setData('path', __DIR__ . '/../../../'); $view->data['path'] = __DIR__ . '/../../../';
$response->set('export', $view); $response->set('export', $view);
} }
@ -323,11 +323,11 @@ final class ApiController extends Controller
$view = new View($this->app->l11nManager, $request, $response); $view = new View($this->app->l11nManager, $request, $response);
$view->addData('tcoll', $tcoll); $view->data['tcoll'] = $tcoll;
$view->addData('lang', $request->getData('lang') ?? $request->getLanguage()); $view->data['lang'] = $request->getData('lang') ?? $request->header->l11n->language;
$view->addData('instance', $instance); $view->data['instance'] = $instance;
$view->addData('template', $instance->template); $view->data['template'] = $instance->template;
$view->addData('basepath', __DIR__ . '/../../../'); $view->data['basepath'] = __DIR__ . '/../../../';
return $view; return $view;
} }
@ -347,11 +347,11 @@ final class ApiController extends Controller
*/ */
public function apiWorkflowTemplateCreate(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void public function apiWorkflowTemplateCreate(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void
{ {
$uploadedFiles = $request->getFiles(); $uploadedFiles = $request->files;
$files = []; $files = [];
if (!empty($val = $this->validateTemplateCreate($request))) { if (!empty($val = $this->validateTemplateCreate($request))) {
$response->set('template_create', new FormValidation($val)); $response->data['template_create'] = new FormValidation($val);
$response->header->status = RequestStatusCode::R_400; $response->header->status = RequestStatusCode::R_400;
return; return;
@ -631,7 +631,7 @@ final class ApiController extends Controller
public function apiWorkflowInstanceCreate(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void public function apiWorkflowInstanceCreate(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void
{ {
if (!empty($val = $this->validateInstanceCreate($request))) { if (!empty($val = $this->validateInstanceCreate($request))) {
$response->set('instance_create', new FormValidation($val)); $response->data['instance_create'] = new FormValidation($val);
$response->header->status = RequestStatusCode::R_400; $response->header->status = RequestStatusCode::R_400;
return; return;

View File

@ -50,7 +50,7 @@ final class BackendController extends Controller
{ {
$view = new View($this->app->l11nManager, $request, $response); $view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-template-list'); $view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-template-list');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response)); $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response);
$path = \str_replace('+', ' ', (string) ($request->getData('path') ?? '/')); $path = \str_replace('+', ' ', (string) ($request->getData('path') ?? '/'));
$templates = WorkflowTemplateMapper::getAll() $templates = WorkflowTemplateMapper::getAll()
@ -58,16 +58,16 @@ final class BackendController extends Controller
->with('tags') ->with('tags')
->with('tags/title') ->with('tags/title')
->where('virtualPath', $path) ->where('virtualPath', $path)
->where('tags/title/language', $response->getLanguage()) ->where('tags/title/language', $response->header->l11n->language)
->execute(); ->execute();
list($collection, $parent) = CollectionMapper::getCollectionsByPath($path); list($collection, $parent) = CollectionMapper::getCollectionsByPath($path);
$view->addData('parent', $parent); $view->data['parent'] = $parent;
$view->addData('collections', $collection); $view->data['collections'] = $collection;
$view->addData('path', $path); $view->data['path'] = $path;
$view->addData('reports', $templates); $view->data['reports'] = $templates;
$view->addData('account', $this->app->accountManager->get($request->header->account)); $view->data['account'] = $this->app->accountManager->get($request->header->account);
return $view; return $view;
} }
@ -87,7 +87,7 @@ final class BackendController extends Controller
public function viewWorkflowTemplate(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : RenderableInterface public function viewWorkflowTemplate(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : RenderableInterface
{ {
$view = new View($this->app->l11nManager, $request, $response); $view = new View($this->app->l11nManager, $request, $response);
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response)); $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response);
/** @var \Modules\Workflow\Models\WorkflowTemplate $template */ /** @var \Modules\Workflow\Models\WorkflowTemplate $template */
$template = WorkflowTemplateMapper::get() $template = WorkflowTemplateMapper::get()
@ -97,7 +97,7 @@ final class BackendController extends Controller
->where('id', (int) $request->getData('id')) ->where('id', (int) $request->getData('id'))
->execute(); ->execute();
$view->setData('template', $template); $view->data['template'] = $template;
if ($template->source->findFile('template-profile.tpl.php')->id > 0) { if ($template->source->findFile('template-profile.tpl.php')->id > 0) {
require_once $template->source->findFile('WorkflowController.php')->getPath(); require_once $template->source->findFile('WorkflowController.php')->getPath();
@ -109,7 +109,7 @@ final class BackendController extends Controller
$view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-template'); $view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-template');
} }
$head = $response->get('Content')->getData('head'); $head = $response->get('Content')->head;
$head->addAsset(AssetType::JSLATE, 'Resources/mermaid/mermaid.min.js?v=1.0.0'); $head->addAsset(AssetType::JSLATE, 'Resources/mermaid/mermaid.min.js?v=1.0.0');
$head->addAsset(AssetType::JSLATE, 'Modules/Workflow/Controller.js?v=1.0.0', ['type' => 'module']); $head->addAsset(AssetType::JSLATE, 'Modules/Workflow/Controller.js?v=1.0.0', ['type' => 'module']);
@ -132,7 +132,7 @@ final class BackendController extends Controller
{ {
$view = new View($this->app->l11nManager, $request, $response); $view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-template-create'); $view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-template-create');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response)); $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response);
return $view; return $view;
} }
@ -153,12 +153,12 @@ final class BackendController extends Controller
{ {
$view = new View($this->app->l11nManager, $request, $response); $view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-dashboard'); $view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-dashboard');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response)); $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response);
$instances = WorkflowInstanceAbstractMapper::getAll() $instances = WorkflowInstanceAbstractMapper::getAll()
->execute(); ->execute();
$view->setData('instances', $instances); $view->data['instances'] = $instances;
return $view; return $view;
} }
@ -179,13 +179,13 @@ final class BackendController extends Controller
{ {
$view = new View($this->app->l11nManager, $request, $response); $view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-instance-list'); $view->setTemplate('/Modules/Workflow/Theme/Backend/workflow-instance-list');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response)); $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response);
/** @var \Modules\Workflow\Models\WorkflowInstanceAbstract $instances */ /** @var \Modules\Workflow\Models\WorkflowInstanceAbstract $instances */
$instances = WorkflowInstanceAbstractMapper::getAll() $instances = WorkflowInstanceAbstractMapper::getAll()
->execute(); ->execute();
$view->setData('instances', $instances); $view->data['instances'] = $instances;
return $view; return $view;
} }
@ -205,7 +205,7 @@ final class BackendController extends Controller
public function viewInstance(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : RenderableInterface public function viewInstance(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : RenderableInterface
{ {
$view = new View($this->app->l11nManager, $request, $response); $view = new View($this->app->l11nManager, $request, $response);
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response)); $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1005501001, $request, $response);
/** @var \Modules\Workflow\Models\WorkflowInstanceAbstract $instance */ /** @var \Modules\Workflow\Models\WorkflowInstanceAbstract $instance */
$instance = WorkflowInstanceAbstractMapper::get() $instance = WorkflowInstanceAbstractMapper::get()
@ -220,7 +220,7 @@ final class BackendController extends Controller
->limit() ->limit()
->execute(); ->execute();
$view->addData('template', $template); $view->data['template'] = $template;
if ($template->source->findFile('instance-profile.tpl.php')->id > 0) { if ($template->source->findFile('instance-profile.tpl.php')->id > 0) {
require_once $template->source->findFile('WorkflowController.php')->getPath(); require_once $template->source->findFile('WorkflowController.php')->getPath();

View File

@ -108,7 +108,7 @@ final class CliController extends Controller
$view = new View($this->app->l11nManager, $request, $response); $view = new View($this->app->l11nManager, $request, $response);
if (!empty($val = $this->validateInstanceCreate($request))) { if (!empty($val = $this->validateInstanceCreate($request))) {
$response->set('instance_create', new FormValidation($val)); $response->data['instance_create'] = new FormValidation($val);
$response->header->status = RequestStatusCode::R_400; $response->header->status = RequestStatusCode::R_400;
} }

View File

@ -103,18 +103,6 @@ class WorkflowInstanceAbstract
$this->createdAt = new \DateTimeImmutable('now'); $this->createdAt = new \DateTimeImmutable('now');
} }
/**
* Get id
*
* @return int
*
* @since 1.0.0
*/
public function getId() : int
{
return $this->id;
}
/** /**
* Set status * Set status
* *

View File

@ -107,18 +107,6 @@ class WorkflowTemplate
$this->source = new NullCollection(); $this->source = new NullCollection();
} }
/**
* Get id
*
* @return int
*
* @since 1.0.0
*/
public function getId() : int
{
return $this->id;
}
/** /**
* Get hooks * Get hooks
* *

View File

@ -13,4 +13,4 @@
declare(strict_types=1); declare(strict_types=1);
/** @var \phpOMS\Views\View $this */ /** @var \phpOMS\Views\View $this */
echo $this->getData('nav')->render(); echo $this->data['nav']->render();

View File

@ -15,9 +15,9 @@ declare(strict_types=1);
/** /**
* @var \phpOMS\Views\View $this * @var \phpOMS\Views\View $this
*/ */
$instances = $this->getData('instances') ?? []; $instances = $this->data['instances'] ?? [];
echo $this->getData('nav')->render(); ?> echo $this->data['nav']->render(); ?>
<div class="row"> <div class="row">
<div class="col-xs-12"> <div class="col-xs-12">

View File

@ -15,9 +15,9 @@ declare(strict_types=1);
/** /**
* @var \phpOMS\Views\View $this * @var \phpOMS\Views\View $this
*/ */
$instances = $this->getData('instances') ?? []; $instances = $this->data['instances'] ?? [];
echo $this->getData('nav')->render(); ?> echo $this->data['nav']->render(); ?>
<div class="row"> <div class="row">
<div class="col-xs-12"> <div class="col-xs-12">

View File

@ -13,4 +13,4 @@
declare(strict_types=1); declare(strict_types=1);
/** @var \phpOMS\Views\View $this */ /** @var \phpOMS\Views\View $this */
echo $this->getData('nav')->render(); echo $this->data['nav']->render();

View File

@ -13,4 +13,4 @@
declare(strict_types=1); declare(strict_types=1);
/** @var \phpOMS\Views\View $this */ /** @var \phpOMS\Views\View $this */
echo $this->getData('nav')->render(); echo $this->data['nav']->render();

View File

@ -18,21 +18,21 @@ use phpOMS\Uri\UriFactory;
* @var \phpOMS\Views\View $this * @var \phpOMS\Views\View $this
* @var \Modules\Workflow\Models\Template[] $templates * @var \Modules\Workflow\Models\Template[] $templates
*/ */
$templates = $this->getData('reports'); $templates = $this->data['reports'];
/** @var \Modules\Admin\Models\Account $account */ /** @var \Modules\Admin\Models\Account $account */
$account = $this->getData('account'); $account = $this->data['account'];
$accountDir = $account->id . ' ' . $account->login; $accountDir = $account->id . ' ' . $account->login;
/** @var \Modules\Media\Models\Collection[] */ /** @var \Modules\Media\Models\Collection[] */
$collections = $this->getData('collections'); $collections = $this->data['collections'];
$mediaPath = \urldecode($this->getData('path') ?? '/'); $mediaPath = \urldecode($this->getData('path') ?? '/');
$previous = empty($templates) ? 'workflow/template/list' : '{/base}/workflow/template/list?{?}&id=' . \reset($templates)->id . '&ptype=p'; $previous = empty($templates) ? 'workflow/template/list' : '{/base}/workflow/template/list?{?}&id=' . \reset($templates)->id . '&ptype=p';
$next = empty($templates) ? 'workflow/template/list' : '{/base}/workflow/template/list?{?}&id=' . \end($templates)->id . '&ptype=n'; $next = empty($templates) ? 'workflow/template/list' : '{/base}/workflow/template/list?{?}&id=' . \end($templates)->id . '&ptype=n';
echo $this->getData('nav')->render(); ?> echo $this->data['nav']->render(); ?>
<div class="row"> <div class="row">
<div class="col-xs-12"> <div class="col-xs-12">
<div class="portlet"> <div class="portlet">

View File

@ -18,7 +18,7 @@ use phpOMS\Views\View;
* @var \phpOMS\Views\View $this * @var \phpOMS\Views\View $this
* @var \Modules\Workflow\Models\Template $template * @var \Modules\Workflow\Models\Template $template
*/ */
$template = $this->getData('template'); $template = $this->data['template'];
$actions = \json_decode(\file_get_contents(__DIR__ . '/../../Definitions/actions.json'), true); $actions = \json_decode(\file_get_contents(__DIR__ . '/../../Definitions/actions.json'), true);
@ -84,7 +84,7 @@ function renderElements(array $leaf, array $actions) : void
} }
} }
echo $this->getData('nav')->render(); ?> echo $this->data['nav']->render(); ?>
<?php <?php
if (!empty($template->schema)) : if (!empty($template->schema)) :
@ -112,7 +112,7 @@ if (!empty($template->schema)) :
<?php foreach ($actions as $action) : ?> <?php foreach ($actions as $action) : ?>
<section class="portlet"> <section class="portlet">
<div class="portlet-body"><?= $this->printHtml($action['name']); ?></div> <div class="portlet-body"><?= $this->printHtml($action['name']); ?></div>
<div class="portlet-body"><?= $this->printHtml($action['description'][$this->request->getLanguage()]); ?></div> <div class="portlet-body"><?= $this->printHtml($action['description'][$this->request->header->l11n->language]); ?></div>
</section> </section>
<?php endforeach; ?> <?php endforeach; ?>
</div> </div>