make type hints easier to read

This commit is contained in:
Dennis Eichhorn 2020-06-08 22:43:28 +02:00
parent dd5b1da5a9
commit 827547d342
6 changed files with 46 additions and 39 deletions

View File

@ -23,6 +23,7 @@ return ['News' => [
'Groups' => 'Gruppen',
'Headline' => 'Headline',
'Headlines' => 'Headlines',
'Langauge' => 'Sprache',
'Link' => 'Link',
'News' => 'News',
'Plain' => 'Plain',

View File

@ -23,6 +23,7 @@ return ['News' => [
'Groups' => 'Groups',
'Headline' => 'Headline',
'Headlines' => 'Headlines',
'Language' => 'Language',
'Link' => 'Link',
'News' => 'News',
'Plain' => 'Plain',

View File

@ -15,15 +15,13 @@ declare(strict_types=1);
use Modules\News\Models\NewsType;
use phpOMS\Uri\UriFactory;
/** @var \phpOMS\Views\View $this */
/** @var \Modules\News\Models\NewsArticle[] $newsList */
$articles = $this->getData('news') ?? [];
$previous = empty($newsList) ? '{/prefix}news/archive' : '{/prefix}news/archive?{?}&id=' . \reset($newsList)->getId() . '&ptype=-';
$next = empty($newsList) ? '{/prefix}news/archive' : '{/prefix}news/archive?{?}&id=' . \end($newsList)->getId() . '&ptype=+';
/**
* @var \phpOMS\Views\View $this
*/
echo $this->getData('nav')->render(); ?>
<div class="row">
@ -44,7 +42,7 @@ echo $this->getData('nav')->render(); ?>
elseif ($news->getType() === NewsType::HEADLINE) { $color = 'purple'; }
elseif ($news->getType() === NewsType::LINK) { $color = 'yellow'; }
?>
<tr data-href="<?= $url; ?>">
<tr tabindex="0" data-href="<?= $url; ?>">
<td><span class="tag <?= $this->printHtml($color); ?>"><?= $this->getHtml('TYPE' . $news->getType()) ?></span></a>
<td><a href="<?= $url; ?>"><?= $this->printHtml($news->getTitle()); ?></a>
<td><a href="<?= $url; ?>"><?= $this->printHtml($news->getCreatedBy()->getName1()); ?></a>

View File

@ -18,7 +18,9 @@ use Modules\News\Models\NullNewsArticle;
use phpOMS\Uri\UriFactory;
/** @var \Modules\News\Models\NewsArticle $news */
$news = $this->getData('news') ?? new NullNewsArticle();
$news = $this->getData('news') ?? new NullNewsArticle();
$isNewArticle = $news instanceof NullNewsArticle;
$languages = \phpOMS\Localization\ISO639Enum::getConstants();
/** @var \phpOMS\Views\View $this */
echo $this->getData('nav')->render(); ?>
@ -39,39 +41,46 @@ echo $this->getData('nav')->render(); ?>
</section>
<div class="box wf-100">
<?= $this->getData('editor')->getData('text')->render('iNews', 'plain', 'docForm'); ?>
<?= $this->getData('editor')->getData('text')->render('iNews', 'plain', 'docForm', $news->getPlain(), $news->getContent()); ?>
</div>
</div>
</div>
<div class="col-xs-12 col-md-3">
<section class="portlet">
<form id="docForm" method="PUT" action="<?= UriFactory::build('{/api}news?csrf={$CSRF}'); ?>">
<form id="docForm" method="<?= $isNewArticle ? 'PUT' : 'POST'; ?>" action="<?= UriFactory::build('{/api}news?' . ($isNewArticle ? '' : 'id={?id}&') . 'csrf={$CSRF}'); ?>">
<div class="portlet-head"><?= $this->getHtml('Status'); ?></div>
<div class="portlet-body">
<table class="layout wf-100">
<tr><td colspan="2"><select name="status" id="iStatus">
<tr><td>
<select name="status" id="iStatus">
<option value="<?= $this->printHtml(NewsStatus::DRAFT); ?>"<?= $news->getStatus() === NewsStatus::DRAFT ? ' selected' : ''; ?>><?= $this->getHtml('Draft'); ?>
<option value="<?= $this->printHtml(NewsStatus::VISIBLE); ?>"<?= $news->getStatus() === NewsStatus::VISIBLE ? ' selected' : ''; ?>><?= $this->getHtml('Visible'); ?>
<tr>
<td colspan="2">
</select>
<tr><td>
<label for="iPublish"><?= $this->getHtml('Publish'); ?></label>
<tr>
<td colspan="2">
<tr><td>
<input type="datetime-local" name="publish" id="iPublish" value="<?= $this->printHtml($news->getPublish()->format('Y-m-d\TH:i:s')); ?>">
<tr><td><label for="iLanguages"><?= $this->getHtml('Language'); ?></label>
<tr><td>
<select id="iLanguages" name="lang">
<?php foreach ($languages as $code => $language) : $code = \strtolower(\substr($code, 1)); ?>
<option value="<?= $this->printHtml($code); ?>"<?= $this->printHtml($code === $news->getLanguage() ? ' selected' : ''); ?>><?= $this->printHtml($language); ?>
<?php endforeach; ?>
</select>
</table>
</div>
<div class="portlet-foot">
<table class="layout wf-100">
<tr>
<td>
<?php if ($news instanceof NullNewsArticle) : ?>
<?php if ($isNewArticle) : ?>
<a href="<?= UriFactory::build('/news/dashboard'); ?>" class="button"><?= $this->getHtml('Delete', '0', '0'); ?></a>
<?php else : ?>
<input type="submit" name="deleteButton" id="iDeleteButton" value="<?= $this->getHtml('Delete', '0', '0'); ?>">
<?php endif; ?>
<td class="rightText">
<input type="submit" formaction="<?= UriFactory::build('{/api}news&csrf={$CSRF}'); ?>" name="saveButton" id="iSaveButton" value="<?= $this->getHtml('Save', '0', '0'); ?>">
<input type="submit" name="saveButton" id="iSaveButton" value="<?= $this->getHtml('Save', '0', '0'); ?>">
</table>
</div>
</form>

View File

@ -14,10 +14,8 @@ declare(strict_types=1);
use \phpOMS\Uri\UriFactory;
/**
* @var \phpOMS\Views\View $this
* @var \Modules\News\Models\NewsArticle[] $newsList
*/
/** @var \phpOMS\Views\View $this */
/** @var \Modules\News\Models\NewsArticle[] $newsList */
$newsList = $this->getData('news');
$previous = empty($newsList) ? '{/prefix}news/dashboard' : '{/prefix}news/dashboard?{?}&id=' . \reset($newsList)->getId() . '&ptype=-';

View File

@ -1,4 +1,5 @@
<?php
/**
* Orange Management
*
@ -12,20 +13,18 @@
*/
declare(strict_types=1);
use phpOMS\Uri\UriFactory;
/**
* @var \Modules\News\Models\NewsArticle $news
*/
/** @var \Modules\News\Models\NewsArticle $news */
$news = $this->getData('news');
/**
* @var bool $editable
*/
/** @var bool $editable */
$editable = $this->getData('editable');
/**
* @var \phpOMS\Views\View $this
*/
/** @var \Modules\Tag\Models\Tag[] $tag */
$tags = $news->getTags();
/** @var \phpOMS\Views\View $this */
echo $this->getData('nav')->render(); ?>
<div class="row">
<div class="col-xs-12">
@ -34,21 +33,22 @@ echo $this->getData('nav')->render(); ?>
<h1><?= $this->printHtml($news->getTitle()); ?></h1>
<?= $news->getContent(); ?>
</article>
<?php if ($editable || !empty($tags)) : ?>
<div class="portlet-foot">
<div class="overflowfix">
<?php $tags = $news->getTags(); foreach ($tags as $tag) : ?>
<span class="tag" style="background: <?= $this->printHtml($tag->getColor()); ?>"><?= $this->printHtml($tag->getTitle()); ?></span>
<?php endforeach; ?>
<div class="row">
<div class="col-xs-6 overflowfix">
<?php foreach ($tags as $tag) : ?>
<span class="tag" style="background: <?= $this->printHtml($tag->getColor()); ?>"><?= $this->printHtml($tag->getTitle()); ?></span>
<?php endforeach; ?>
</div>
<?php if ($editable) : ?>
<div class="col-xs-6 rightText">
<a tabindex="0" class="button" href="<?= UriFactory::build('{/prefix}news/edit?id=' . $news->getId()); ?>">Edit</a>
</div>
<?php endif; ?>
</div>
</div>
<?php endif; ?>
</section>
</div>
</div>
<?php if ($editable) : ?>
<div class="row">
<div class="box">
<a tabindex="0" class="button" href="<?= \phpOMS\Uri\UriFactory::build('{/prefix}news/edit?id=' . $news->getId()); ?>">Edit</a>
</div>
</div>
<?php endif; ?>