Merge pull request #38823 from nextcloud/enh/noid/fix-icons

generate user themed favicon and touchicon
This commit is contained in:
Simon L 2023-06-16 13:05:45 +02:00 committed by GitHub
commit b288d27c51
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -120,14 +120,15 @@ class IconController extends Controller {
} catch (NotFoundException $e) {
}
if ($iconFile === null && $this->imageManager->shouldReplaceIcons()) {
$color = $this->themingDefaults->getColorPrimary();
try {
$iconFile = $this->imageManager->getCachedImage('favIcon-' . $app);
$iconFile = $this->imageManager->getCachedImage('favIcon-' . $app . $color);
} catch (NotFoundException $exception) {
$icon = $this->iconBuilder->getFavicon($app);
if ($icon === false || $icon === '') {
return new NotFoundResponse();
}
$iconFile = $this->imageManager->setCachedImage('favIcon-' . $app, $icon);
$iconFile = $this->imageManager->setCachedImage('favIcon-' . $app . $color, $icon);
}
$response = new FileDisplayResponse($iconFile, Http::STATUS_OK, ['Content-Type' => 'image/x-icon']);
}
@ -157,14 +158,15 @@ class IconController extends Controller {
} catch (NotFoundException $e) {
}
if ($this->imageManager->shouldReplaceIcons()) {
$color = $this->themingDefaults->getColorPrimary();
try {
$iconFile = $this->imageManager->getCachedImage('touchIcon-' . $app);
$iconFile = $this->imageManager->getCachedImage('touchIcon-' . $app . $color);
} catch (NotFoundException $exception) {
$icon = $this->iconBuilder->getTouchIcon($app);
if ($icon === false || $icon === '') {
return new NotFoundResponse();
}
$iconFile = $this->imageManager->setCachedImage('touchIcon-' . $app, $icon);
$iconFile = $this->imageManager->setCachedImage('touchIcon-' . $app . $color, $icon);
}
$response = new FileDisplayResponse($iconFile, Http::STATUS_OK, ['Content-Type' => 'image/png']);
}