favicon: replace SVG placeholder with full PNG/ICO set from assets/favicon/
1
TODO.md
@@ -4,3 +4,4 @@
|
|||||||
- [x] Replace `mb_strlen`/`mb_substr` with `strlen`/`substr` in TfeController, SearchController, Parsedown — mbstring extension not available on production server
|
- [x] Replace `mb_strlen`/`mb_substr` with `strlen`/`substr` in TfeController, SearchController, Parsedown — mbstring extension not available on production server
|
||||||
- [x] system.css: retheme to site light palette — remove all `--sys-bg/border/text` dark tokens from variables.css; replace with standard `--bg-*`, `--border-*`, `--text-*` tokens; remap `--sys-syntax-*` to light-appropriate colours; remove dark terminal aesthetic
|
- [x] system.css: retheme to site light palette — remove all `--sys-bg/border/text` dark tokens from variables.css; replace with standard `--bg-*`, `--border-*`, `--text-*` tokens; remap `--sys-syntax-*` to light-appropriate colours; remove dark terminal aesthetic
|
||||||
- [x] SystemController: PHP-FPM status check — dynamically probe `phpX.Y-fpm` unit derived from running PHP version before static fallback list; add `php8.4-fpm` to cover current production PHP 8.4
|
- [x] SystemController: PHP-FPM status check — dynamically probe `phpX.Y-fpm` unit derived from running PHP version before static fallback list; add `php8.4-fpm` to cover current production PHP 8.4
|
||||||
|
- [x] Favicon: replace SVG placeholder with full PNG/ICO favicon set from `public/assets/favicon/` in `templates/head.php`
|
||||||
|
|||||||
@@ -1,65 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<svg
|
|
||||||
width="24"
|
|
||||||
height="24"
|
|
||||||
viewBox="0 0 24 24"
|
|
||||||
fill="none"
|
|
||||||
stroke="currentColor"
|
|
||||||
stroke-width="2"
|
|
||||||
stroke-linecap="round"
|
|
||||||
stroke-linejoin="round"
|
|
||||||
class="lucide lucide-archive-restore"
|
|
||||||
version="1.1"
|
|
||||||
id="svg12"
|
|
||||||
sodipodi:docname="icon.svg"
|
|
||||||
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
|
||||||
<defs
|
|
||||||
id="defs16" />
|
|
||||||
<sodipodi:namedview
|
|
||||||
id="namedview14"
|
|
||||||
pagecolor="#ffffff"
|
|
||||||
bordercolor="#000000"
|
|
||||||
borderopacity="0.25"
|
|
||||||
inkscape:showpageshadow="2"
|
|
||||||
inkscape:pageopacity="0.0"
|
|
||||||
inkscape:pagecheckerboard="0"
|
|
||||||
inkscape:deskcolor="#d1d1d1"
|
|
||||||
showgrid="false"
|
|
||||||
inkscape:zoom="24.719275"
|
|
||||||
inkscape:cx="5.2185997"
|
|
||||||
inkscape:cy="13.713995"
|
|
||||||
inkscape:window-width="1920"
|
|
||||||
inkscape:window-height="1011"
|
|
||||||
inkscape:window-x="0"
|
|
||||||
inkscape:window-y="32"
|
|
||||||
inkscape:window-maximized="1"
|
|
||||||
inkscape:current-layer="svg12" />
|
|
||||||
<rect
|
|
||||||
width="20"
|
|
||||||
height="5"
|
|
||||||
x="2"
|
|
||||||
y="4"
|
|
||||||
rx="2"
|
|
||||||
id="rect2"
|
|
||||||
style="stroke:#c104fc;stroke-opacity:1" />
|
|
||||||
<path
|
|
||||||
d="M12 13v7"
|
|
||||||
id="path4"
|
|
||||||
style="stroke:#c104fc;stroke-opacity:1" />
|
|
||||||
<path
|
|
||||||
d="m9 16 3-3 3 3"
|
|
||||||
id="path6"
|
|
||||||
style="stroke:#c104fc;stroke-opacity:1" />
|
|
||||||
<path
|
|
||||||
d="M4 9v9a2 2 0 0 0 2 2h2"
|
|
||||||
id="path8"
|
|
||||||
style="stroke:#c104fc;stroke-opacity:1" />
|
|
||||||
<path
|
|
||||||
d="M20 9v9a2 2 0 0 1-2 2h-2"
|
|
||||||
id="path10"
|
|
||||||
style="stroke:#c104fc;stroke-opacity:1" />
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 1.7 KiB |
@@ -1,5 +0,0 @@
|
|||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24">
|
|
||||||
<rect width="24" height="24" rx="4" fill="#9557b5"/>
|
|
||||||
<text x="12" y="17.5" font-family="Georgia, serif" font-size="15" font-weight="bold"
|
|
||||||
fill="#ffffff" text-anchor="middle">P</text>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 286 B |
BIN
public/assets/favicon/android-chrome-192x192.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
public/assets/favicon/android-chrome-512x512.png
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
public/assets/favicon/apple-touch-icon-152x152.png
Normal file
|
After Width: | Height: | Size: 8.8 KiB |
BIN
public/assets/favicon/apple-touch-icon-167x167.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
public/assets/favicon/apple-touch-icon-180x180.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
public/assets/favicon/favicon-128x128.png
Normal file
|
After Width: | Height: | Size: 7.1 KiB |
BIN
public/assets/favicon/favicon-16x16.png
Normal file
|
After Width: | Height: | Size: 575 B |
BIN
public/assets/favicon/favicon-32x32.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
public/assets/favicon/favicon-48x48.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
public/assets/favicon/favicon-64x64.png
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
BIN
public/assets/favicon/favicon-96x96.png
Normal file
|
After Width: | Height: | Size: 4.9 KiB |
BIN
public/assets/favicon/favicon.ico
Normal file
|
After Width: | Height: | Size: 8.3 KiB |
10
public/assets/favicon/favicon_html.txt
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<!-- Favicon and icon links - add to your <head> section -->
|
||||||
|
<link rel="apple-touch-icon" sizes="152x152" href="/favicons/apple-touch-icon-152x152.png">
|
||||||
|
<link rel="apple-touch-icon" sizes="167x167" href="/favicons/apple-touch-icon-167x167.png">
|
||||||
|
<link rel="apple-touch-icon" sizes="180x180" href="/favicons/apple-touch-icon-180x180.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicons/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicons/favicon-16x16.png">
|
||||||
|
<link rel="manifest" href="/favicons/site.webmanifest">
|
||||||
|
<link rel="shortcut icon" href="/favicons/favicon.ico">
|
||||||
|
<meta name="msapplication-TileColor" content="\#ffffff">
|
||||||
|
<meta name="theme-color" content="\#ffffff">
|
||||||
19
public/assets/favicon/site.webmanifest
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"short_name": "",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "/favicons/android-chrome-192x192.png",
|
||||||
|
"sizes": "192x192",
|
||||||
|
"type": "image/png"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "/favicons/android-chrome-512x512.png",
|
||||||
|
"sizes": "512x512",
|
||||||
|
"type": "image/png"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"theme_color": "#ffffff",
|
||||||
|
"background_color": "#ffffff",
|
||||||
|
"display": "standalone"
|
||||||
|
}
|
||||||
@@ -57,7 +57,13 @@
|
|||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<link rel="icon" type="image/svg+xml" href="/assets/<?= empty($isAdmin) ? 'favicon.svg' : 'admin_favicon.svg' ?>">
|
<link rel="apple-touch-icon" sizes="152x152" href="/assets/favicon/apple-touch-icon-152x152.png">
|
||||||
|
<link rel="apple-touch-icon" sizes="167x167" href="/assets/favicon/apple-touch-icon-167x167.png">
|
||||||
|
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon-180x180.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png">
|
||||||
|
<link rel="shortcut icon" href="/assets/favicon/favicon.ico">
|
||||||
|
<meta name="theme-color" content="#ffffff">
|
||||||
<link rel="stylesheet" href="/assets/css/modern-normalize.min.css">
|
<link rel="stylesheet" href="/assets/css/modern-normalize.min.css">
|
||||||
<link rel="stylesheet" href="/assets/css/common.css">
|
<link rel="stylesheet" href="/assets/css/common.css">
|
||||||
<?php foreach ($extraCss ?? [] as $css): ?>
|
<?php foreach ($extraCss ?? [] as $css): ?>
|
||||||
|
|||||||