fix phpstan lvl 9 bugs

This commit is contained in:
Dennis Eichhorn 2022-12-26 20:52:58 +01:00
parent 800d7a61c3
commit 36e6f0f8c1
7 changed files with 52 additions and 14 deletions

View File

@ -132,6 +132,7 @@ final class Installer extends InstallerAbstract
\mkdir(__DIR__ . '/../../../temp');
}
/** @var array<string, array> $mediaData */
foreach ($mediaData as $media) {
switch ($media['type']) {
case 'collection':
@ -178,9 +179,14 @@ final class Installer extends InstallerAbstract
$module->apiCollectionCreate($request, $response);
return !\is_array($response->get('')['response'])
? $response->get('')['response']->toArray()
: $response->get('')['response'];
$responseData = $response->get('');
if (!\is_array($responseData)) {
return [];
}
return !\is_array($responseData['response'])
? $responseData['response']->toArray()
: $responseData['response'];
}
/**
@ -206,7 +212,12 @@ final class Installer extends InstallerAbstract
$module->apiMediaTypeCreate($request, $response);
$type = $response->get('')['response'];
$responseData = $response->get('');
if (!\is_array($responseData)) {
return [];
}
$type = $responseData['response'];
$id = $type->getId();
foreach ($data['l11n'] as $l11n) {
@ -307,11 +318,23 @@ final class Installer extends InstallerAbstract
$module->apiCollectionCreate($request, $response);
return !\is_array($response->get('')['response']) ? $response->get('')['response']->toArray() : $response->get('')['response'];
$responseData = $response->get('');
if (!\is_array($responseData)) {
return [];
}
return !\is_array($responseData['response'])
? $responseData['response']->toArray()
: $responseData['response'];
}
return !\is_array($response->get('')['response'])
? $response->get('')['response']->toArray()
: $response->get('')['response'];
$responseData = $response->get('');
if (!\is_array($responseData)) {
return [];
}
return !\is_array($responseData['response'])
? $responseData['response']->toArray()
: $responseData['response'];
}
}

View File

@ -107,7 +107,12 @@ final class ApiController extends Controller
$internalResponse = new HttpResponse();
$this->app->moduleManager->get('Tag')->apiTagCreate($request, $internalResponse, null);
$file->addTag($tId = $internalResponse->get($request->uri->__toString())['response']);
if (!\is_array($data = $internalResponse->get($request->uri->__toString()))) {
continue;
}
$file->addTag($tId = $data['response']);
} else {
$file->addTag(new NullTag($tId = (int) $tag['id']));
}
@ -507,7 +512,7 @@ final class ApiController extends Controller
private function createCollectionFromRequest(RequestAbstract $request) : Collection
{
$mediaCollection = new Collection();
$mediaCollection->name = $request->getData('name') ?? '';
$mediaCollection->name = (string) ($request->getData('name') ?? '');
$mediaCollection->description = ($description = Markdown::parse($request->getData('description') ?? ''));
$mediaCollection->descriptionRaw = $description;
$mediaCollection->createdBy = new NullAccount($request->header->account);
@ -947,7 +952,7 @@ final class ApiController extends Controller
private function createDocTypeFromRequest(RequestAbstract $request) : MediaType
{
$type = new MediaType();
$type->name = $request->getData('name');
$type->name = (string) ($request->getData('name') ?? '');
if (!empty($request->getData('title'))) {
$type->setL11n($request->getData('title'), $request->getData('lang') ?? $request->getLanguage());

View File

@ -242,6 +242,7 @@ final class BackendController extends Controller
$media->getVirtualPath() . ($media->getVirtualPath() !== '/' ? '/' : '') . $media->name
)->where('tags/title/language', $request->getLanguage())->execute();
/** @var \Modules\Media\Models\Collection $collection */
$collection = CollectionMapper::get()->where('id', $id)->execute();
$media = \array_merge($files, $collection->getSources());
@ -405,7 +406,12 @@ final class BackendController extends Controller
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/' . static::NAME . '/Admin/Settings/Theme/Backend/settings-type');
$type = MediaTypeMapper::get()->with('title')->where('title/language', $response->getLanguage())->where('id', (int) $request->getData('id'))->execute();
/** @var \Modules\Media\Models\MediaType $type */
$type = MediaTypeMapper::get()
->with('title')
->where('title/language', $response->getLanguage())
->where('id', (int) $request->getData('id'))
->execute();
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1007501001, $request, $response));
$view->addData('type', $type);

View File

@ -41,7 +41,9 @@ class ElementView extends MediaView
*/
public function render(mixed ...$data) : string
{
/** @var array{0:\Modules\Media\Models\Media} $data */
$this->media = $data[0];
return parent::render();
}
}

View File

@ -52,7 +52,9 @@ class ListView extends View
*/
public function render(mixed ...$data) : string
{
/** @var array{0:\Modules\Media\Models\Media[]} $data */
$this->media = $data[0];
return parent::render();
}
}

View File

@ -209,7 +209,7 @@ $next = empty($media) ? '{/lang}/{/app}/media/list' : '{/lang}/{/app}/media/
<td data-label="<?= $this->getHtml('Tag'); ?>"><?php $tags = $value->getTags(); foreach ($tags as $tag) : ?>
<a href="<?= $url; ?>">
<span class="tag" style="background: <?= $this->printHtml($tag->color); ?>">
<?= $tag->icon !== null ? '<i class="' . $this->printHtml($tag->icon ?? '') . '"></i>' : ''; ?>
<?= !empty($tag->icon) ? '<i class="' . $this->printHtml($tag->icon) . '"></i>' : ''; ?>
<?= $this->printHtml($tag->getL11n()); ?>
</span>
</a>

View File

@ -97,7 +97,7 @@ echo $this->getData('nav')->render();
); ?></a>
<tr><td><?= $this->getHtml('Tags'); ?><td>
<?php foreach ($tags as $tag) : ?>
<span class="tag" style="background: <?= $this->printHtml($tag->color); ?>"><?= $tag->icon !== null ? '<i class="' . $this->printHtml($tag->icon ?? '') . '"></i>' : ''; ?><?= $this->printHtml($tag->getL11n()); ?></span>
<span class="tag" style="background: <?= $this->printHtml($tag->color); ?>"><?= !empty($tag->icon) ? '<i class="' . $this->printHtml($tag->icon) . '"></i>' : ''; ?><?= $this->printHtml($tag->getL11n()); ?></span>
<?php endforeach; ?>
<tr><td colspan="2"><?= $this->getHtml('Description'); ?>
<tr><td colspan="2"><?= $media->description; ?>