Ajout d'un favicon dynamique personnalisé basé sur le nom de configuration
## Nouvelle fonctionnalité ### Favicon automatique avec initiales - Génération dynamique d'un favicon SVG avec les 2 premières lettres du nom - Route `/favicon.ico` qui utilise la variable `config.name` - Design moderne avec dégradé bleu et coins arrondis - Cache navigateur optimisé (24h) pour les performances ### Intégration dans l'interface - Ajout de la balise favicon dans autopost.html - Support SVG pour une qualité parfaite à toutes les tailles - Personnalisation automatique selon la configuration ## Avantages - Identité visuelle unique pour chaque instance - Aucune configuration manuelle nécessaire - Favicon professionnel généré automatiquement - Optimisation des performances avec mise en cache
This commit is contained in:
@@ -280,6 +280,26 @@ autopostRouter.get('/logout', (req, res) => {
|
||||
req.session.destroy(() => res.redirect('/autopost/login'));
|
||||
});
|
||||
|
||||
// --------------------------- Favicon dynamique -----------------------------
|
||||
autopostRouter.get('/favicon.ico', (req, res) => {
|
||||
const initials = config.name.substring(0, 2).toUpperCase();
|
||||
const svg = `<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
|
||||
<defs>
|
||||
<linearGradient id="grad" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#3B82F6;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#1D4ED8;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<rect width="32" height="32" rx="6" fill="url(#grad)"/>
|
||||
<text x="16" y="22" font-family="Arial, sans-serif" font-size="14" font-weight="bold"
|
||||
text-anchor="middle" fill="white">${initials}</text>
|
||||
</svg>`;
|
||||
|
||||
res.setHeader('Content-Type', 'image/svg+xml');
|
||||
res.setHeader('Cache-Control', 'public, max-age=86400'); // Cache 24h
|
||||
res.send(svg);
|
||||
});
|
||||
|
||||
function checkAuth(req, res, next) {
|
||||
if (req.session && req.session.authenticated) {
|
||||
next();
|
||||
|
||||
Reference in New Issue
Block a user